User's AC Ratio

92.3% (12/13)

Submission's AC Ratio

41.9% (18/43)

Tags

Description

為了慶祝 iPhone Max 手機的上市,蓮霧公司在他們的最大直營店擺設了 n 台最新的 iPhone Max 手機環繞整家直營店,希望在首賣日帶動買氣。殊不知,在首賣日前一天晚上,有 m 個競爭對手的死忠支持者因為不滿銷售量被 iPhone 系列的推出大受打擊,趁夜闖入蓮霧直營店,打算惡搞這些已經開機好正在展示動畫的 iPhone 。

但闖入後才發現,該店展示的 iPhone 數量實在太多,他們沒有時間去惡搞所有的iPhone,他們決定每人只挑部分手機下手:第 i 個人把第 ki, 2ki, 3ki, ... 隻手機倒置;如果手機是開機狀態就把它關機、如果手機是正放就把它倒放,反之亦然。

假設原本所有的 iPhone 全部都是正放且開機,請寫一隻程式去計算這些闖入者在結束他們的惡作劇後,究竟有幾台手機看起來是被惡搞過(過程不重要,只須以最後的狀態判斷即可)。

Input Format

第一行有兩個整數,n 和 m,並以空白分隔。n 代表 iPhone 的總數,而 m 代表有幾個入侵者。接下來是 m 行,每行一個數字,依序代表每個人惡作劇手機的間隔,即 k1, k2, k3, ... , km。

限制:

保證有99%的測試資料滿足:
1 ≤ n ≤ 200
1 ≤ m ≤ 200
1 ≤ ki ≤ n

保證所有的測試資料滿足:
1 ≤ n ≤ 300000
1 ≤ m ≤ 2000000
1 ≤ ki ≤ n

Output Format

第一行輸出一整數,代表最後看起來被惡搞過的手機數量x。接下來輸出x行,每行按照由小到大的順序輸出被惡搞的手機編號。

Sample Input

Sample #1:
7 2
2
3

Sample #2:
5 3
1
2
3

Sample Output

Sample #1:
3
2
3
4

Sample #2:
2
1
5

Hints

Problem Source

Subtasks

For Testdata: 0 ~ 4, Score: 99
For Testdata: 5 ~ 9, Score: 1
No. Time Limit (ms) Memory Limit (KiB) Output Limit (KiB)
0 1000 65536 262144
1 1000 65536 262144
2 1000 65536 262144
3 1000 65536 262144
4 1000 65536 262144
5 1000 65536 262144
6 1000 65536 262144
7 1000 65536 262144
8 1000 65536 262144
9 1000 65536 262144