#1086. 开关灯

开关灯

题目描述

有 N 个灯泡(编号 1 到 ​N*),初始全部关闭。M 个人依次操作,第 i 个人有两个参数 aia_i 和 ​kik_i ,他会对编号为 aia_i 的倍数中 前 kik_i个最小的灯泡 进行状态翻转(关闭→开启,开启→关闭)。请按升序输出最终开启的灯泡编号。

输入格式

第一行:两个正整数 N 和 M

接下来 M 行:每行两个正整数 aia_i和 ​kik_i(表示第 i 个人的参数)

输出格式

一行:按升序输出开启的灯泡编号(逗号间隔),若无开启灯泡则输出空行。

数据约定

1 ≤ N ≤ 50000,1 ≤ M ≤ 50000,1 ≤ aia_i ≤ N, 1 ≤ kik_i ≤ (N/aia_i)

样例

20 3
2 4
3 3
4 2
2,3,9

样例解释

操作 a=2,k=4:翻转灯泡 2,4,6,8

操作 a=3,k=3:翻转灯泡 3,6,9

操作 a=4,k=2:翻转灯泡 4,8

最终状态:灯泡 2,3,9 开启(翻转奇数次)