121 人解决,146 人已尝试。
186 份提交通过,共有 459 份提交。
2.9 EMB 奖励。
单点时限: 2.0 sec
内存限制: 256 MB
考虑一个 N 位的二进制串 b1…bN,其对应的二进制矩阵为:
然后将这个矩阵的行按照字典顺序排序,‘0’ 在 ‘1’ 之前。
你的任务是编写一个程序,给定排序后的矩阵的最后一列,求出已排序的矩阵的第一行。
例如:考虑二进制串(00110),排序后的矩阵为:
0 0 0 1 1
0 0 1 1 0
0 1 1 0 0
1 0 0 0 1
1 1 0 0 0
则该矩阵的最后一列为(1 0 0 1 0)。给出了这一列,你的程序应该确定第一行为(0 0 0 1 1)。
输入第一行包含一个整数 N(0<=20000),表示二进制串的位数。第二行包含 N 个整数,表示已排序的矩阵的最后一列(从上到下)。
输出文件仅一行,包含 N 个整数,从左到右依次表示已排序的矩阵的第一行;若无解,则输出-1。
5 1 0 0 1 0
0 0 0 1 1
121 人解决,146 人已尝试。
186 份提交通过,共有 459 份提交。
2.9 EMB 奖励。
创建: 14 年,9 月前.
修改: 4 年,8 月前.
最后提交: 3 小时前.
来源: N/A