B. 点亮灯笼

    Type: Default 1000ms 256MiB

点亮灯笼

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目描述

nn 个灯笼环形摆放。最开始,这些灯笼都是关闭的状态。

操作台上有 nn 个按钮,按下第 xx 个按钮时,会反转灯笼 xx 以及相邻两个灯笼的状态。「反转」是指关闭变成点亮、点亮变成关闭。

举一个例子:如果按下第 55 个按钮,则 445566 号灯笼都会反转;如果按下第 nn 个按钮,则 n1,n,1n-1, n, 1 这三个灯笼状态反转。这是因为灯笼放置为环形,n1n-111 是与 nn 相邻的灯笼。

我们依次按下了一些按钮。你需要编程求出当我们的操作完成后,最终这些灯笼的状态。

输入格式

第一行,两个正整数 n,mn, m,分别表示共有 nn 个灯笼、我们按了 mm 次按钮。

接下来 mm 行,每行一个正整数,表示我们在那一次操作中按下了哪个按钮。

输出格式

仅一行,nn 个整数,依次表示 nn 个灯笼的状态,用空格隔开。以 0 代表灯笼关闭,以 1 代表灯笼点亮。

输入输出样例 #1

输入 #1

5 4
1
3
1
2

输出 #1

1 0 0 1 0

说明/提示

样例解释

灯笼序列的状态如下:

0 0 0 0 0  # 初始状态
1 1 0 0 1  # 按下 1 之后的状态
1 0 1 1 1  # 按下 3 之后的状态
0 1 1 1 0  # 按下 1 之后的状态
1 0 0 1 0  # 按下 2 之后的状态

因此你应当输出 1 0 0 1 0

数据规模与约定

对于 100%100\% 的数据,有 n1000n\leq 1000m1000m\leq 1000

龙凤苑中学3.26

Not Attended
Status
Done
Rule
IOI
Problem
3
Start at
2025-3-26 16:30
End at
2025-3-26 18:30
Duration
2 hour(s)
Host
Partic.
19