#ATagc003e. [AGC003E] Sequential operations on Sequence

[AGC003E] Sequential operations on Sequence

题目描述

高桥君从妈妈那里得到了一个数列。这个数列的长度为 NN,第 ii 项的元素为 ii。高桥君对这个数列总共进行了 QQ 次如下操作。第 ii 次操作由参数 qiq_i 给出,操作如下:

  • 将当前的数列无限重复,取其前 qiq_i 项,作为新的数列。

请你求出 QQ 次操作后,数列中 11NN 每个数各出现了多少次。

输入格式

输入通过标准输入按以下格式给出。

NN QQ q1q_1 q2q_2 \ldots qQq_Q

输出格式

输出 NN 行。第 ii 行输出 QQ 次操作后数列中数字 ii 出现的次数。

样例 1

输入

5 3
6
4
11

输出

3
3
3
2
0

样例 2

输入

10 10
9
13
18
8
10
10
9
19
22
27

输出

7
4
4
3
3
2
2
2
0
0

说明/提示

限制条件

  • 1N1051 \leq N \leq 10^5
  • 0Q1050 \leq Q \leq 10^5
  • 1qi10181 \leq q_i \leq 10^{18}
  • 输入均为整数。

样例解释 1

第一次操作后,数列变为 1,2,3,4,5,11,2,3,4,5,1。第二次操作后,数列变为 1,2,3,41,2,3,4。第三次操作后,数列变为 1,2,3,4,1,2,3,4,1,2,31,2,3,4,1,2,3,4,1,2,3。此时数列中 1,2,3,4,51,2,3,4,5 分别出现了 3,3,3,2,03,3,3,2,0 次,因此按上述方式输出。

由 ChatGPT 4.1 翻译