T2 点亮灯笼

Luogu
IDLGB3639
Time1000ms
Memory128MB
DifficultyP1
数组
有 $n$ 个灯笼环形摆放。最开始,这些灯笼都是关闭的状态。 操作台上有 $n$ 个按钮,按下第 $x$ 个按钮时,会反转灯笼 $x$ 以及相邻两个灯笼的状态。「反转」是指关闭变成点亮、点亮变成关闭。 举一个例子:如果按下第 $5$ 个按钮,则 $4$、$5$、$6$ 号灯笼都会反转;如果按下第 $n$ 个按钮,则 $n-1, n, 1$ 这三个灯笼状态反转。这是因为灯笼放置为环形,$n-1$ 和 $1$ 是与 $n$ 相邻的灯笼。 我们依次按下了一些按钮。你需要编程求出当我们的操作完成后,最终这些灯笼的状态。 ## Input 第一行,两个正整数 $n, m$,分别表示共有 $n$ 个灯笼、我们按了 $m$ 次按钮。 接下来 $m$ 行,每行一个正整数,表示我们在那一次操作中按下了哪个按钮。 ## Output 仅一行,$n$ 个整数,依次表示 $n$ 个灯笼的状态,用空格隔开。以 `0` 代表灯笼关闭,以 `1` 代表灯笼点亮。 [samples] ## Background **请尽量在 20min 之内写完题目。这是指「写代码」的时间;「读题」时间不计算在内。** ## Note #### 样例解释 灯笼序列的状态如下: ```plaintext 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\%$ 的数据,有 $n\leq 1000$,$m\leq 1000$。
Samples
Input #1
5 4
1
3
1
2
Output #1
1 0 0 1 0
API Response (JSON)
{
  "problem": {
    "name": "T2 点亮灯笼",
    "description": {
      "content": "有 $n$ 个灯笼环形摆放。最开始,这些灯笼都是关闭的状态。 操作台上有 $n$ 个按钮,按下第 $x$ 个按钮时,会反转灯笼 $x$ 以及相邻两个灯笼的状态。「反转」是指关闭变成点亮、点亮变成关闭。 举一个例子:如果按下第 $5$ 个按钮,则 $4$、$5$、$6$ 号灯笼都会反转;如果按下第 $n$ 个按钮,则 $n-1, n, 1$ 这三个灯笼状态反转。这是因为灯笼放置为环形,$n-1$",
      "description_type": "Markdown"
    },
    "platform": "Luogu",
    "limit": {
      "time_limit": 1000,
      "memory_limit": 131072
    },
    "difficulty": {
      "LuoguStyle": "P1"
    },
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "LGB3639"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "有 $n$ 个灯笼环形摆放。最开始,这些灯笼都是关闭的状态。\n\n操作台上有 $n$ 个按钮,按下第 $x$ 个按钮时,会反转灯笼 $x$ 以及相邻两个灯笼的状态。「反转」是指关闭变成点亮、点亮变成关闭。\n\n举一个例子:如果按下第 $5$ 个按钮,则 $4$、$5$、$6$ 号灯笼都会反转;如果按下第 $n$ 个按钮,则 $n-1, n, 1$ 这三个灯笼状态反转。这是因为灯笼放置为环形,$n-1$...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments