Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

这道题什么意思呢,学过数字逻辑电路的一定很好理解

Posted by bobo0906 at 2011-05-05 21:02:57 on Problem 1105
就是相当于门电路。
第一行给你的数字表示有几个变量。当然,变量只能从“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:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator