Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
这道题什么意思呢,学过数字逻辑电路的一定很好理解就是相当于门电路。 第一行给你的数字表示有几个变量。当然,变量只能从“0”或“1”中选值。 也就是说,有n个变量,就有2^n种组合。那么下一行就是给你这2^n种组合在门电路输出端给出的值。 顺序是二进制的顺序。样例是三个变量。答案是“00000111”,所以根据x1,x2,x3的组合,000就是0,答案就是串中的第0个。001就是1,答案是串中的第1个,以此类推。110就是串中的第6个,是“1”。 下面有个数据,就是问你查询几次。样例中是4,查询4次。 每次查询都会给你n个变量的值,比如第一个样例第四次查询给的是110,那么,它查询的就是x1=1,x2=1,x3=0的时候的输出,显然,把他看成二进制再转换成十进制就是110(2进制)=6(十进制),是答案串中的第六个,注意'六'是数组下标(就是实际意义上的第七个)。 这里有一个需要置换的地方,注意到他每次样例输入变量是有顺序的。 第二次样例变量的顺序就是x3,x1,x2。但是他下面查询的时候每次给的顺序都是x1,x2,x3。所以只要把下面查询的串置换成上面给出变量的串的顺序就可以了。 如第二个样例的最后一次查询,x1=1,x2=1,x3=0,转成x3,x1,x2的顺序才能直接运用他给的答案串,所以变成011,就是第三个,答案串中的第四个字符“1”。 输出的时候按顺序输出即可,别忘了多输出一个空行。 大概就是这样了罢。 Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator