#ABC288G. 3^N 扫雷

3^N 扫雷

3^N 扫雷

题目描述

位置 0,1,2,,3N10, 1, 2, \ldots, 3^N-1 上各放置 0 个或 1 个炸弹。

当且仅当对每个 i=1,,Ni=1, \ldots, N,下面条件都成立时,称位置 xx 与位置 yy 相邻。

xx'yy' 分别为 xxyy 的三进制表示中从低到高第 ii 位的数字。此时 xy1|x' - y'| \leq 1

已知与位置 ii 相邻的位置上的炸弹总数恰好为 AiA_i。输出一个与这些信息一致的炸弹放置方案。

输入格式

输入按以下格式从标准输入给出:

NN
A0A_0 A1A_1 \ldots A3N1A_{3^N-1}

输出格式

用空格隔开输出 B0,B1,,B3N1B_0, B_1, \ldots, B_{3^N-1},其中若位置 ii 没有炸弹则 Bi=0B_i = 0,若有炸弹则 Bi=1B_i = 1

样例

1
0 1 1
0 0 1

位置 00 与位置 0011 相邻,炸弹总数为 0。

位置 11 与位置 001122 相邻,炸弹总数为 1。

位置 22 与位置 1122 相邻,炸弹总数为 1。

若只在位置 22 放置炸弹,则以上所有条件都满足,因此该放置正确。

2
2 3 2 4 5 3 3 4 2
0 1 0 1 0 1 1 1 0
2
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0

数据范围

  • 1N121 \leq N \leq 12
  • 存在与 A0,A1,,A3N1A_0, A_1, \ldots, A_{3^N-1} 一致的炸弹放置方案。
  • 输入中的所有值均为整数。
难度 省选/NOI-
通过率
尝试 0
已通过 0
ID
2614
类型
传统题
Time Limit
2000ms
Memory Limit
1024MiB
上传者
标签