Codeforces Round 769 (Div. 2)
D
New Year Concert
Codeforces
2000
原题
← CE1 →
翻译中…

New Year is just around the corner, which means that in School 179, preparations for the concert are in full swing.

翻译中…

There are $n$ classes in the school, numbered from $1$ to $n$, the $i$-th class has prepared a scene of length $a_i$ minutes.

翻译中…

As the main one responsible for holding the concert, Idnar knows that if a concert has $k$ scenes of lengths $b_1$, $b_2$, $\ldots$, $b_k$ minutes, then the audience will get bored if there exist two integers $l$ and $r$ such that $1 \le l \le r \le k$ and $\gcd(b_l, b_{l + 1}, \ldots, b_{r - 1}, b_r) = r - l + 1$, where $\gcd(b_l, b_{l + 1}, \ldots, b_{r - 1}, b_r)$ is equal to the greatest common divisor (GCD) of the numbers $b_l$, $b_{l + 1}$, $\ldots$, $b_{r - 1}$, $b_r$.

翻译中…

To avoid boring the audience, Idnar can ask any number of times (possibly zero) for the $t$-th class ($1 \le t \le k$) to make a new scene $d$ minutes in length, where $d$ can be any positive integer. Thus, after this operation, $b_t$ is equal to $d$. Note that $t$ and $d$ can be different for each operation.

翻译中…

For a sequence of scene lengths $b_1$, $b_2$, $\ldots$, $b_{k}$, let $f(b)$ be the minimum number of classes Idnar has to ask to change their scene if he wants to avoid boring the audience.

翻译中…

Idnar hasn't decided which scenes will be allowed for the concert, so he wants to know the value of $f$ for each non-empty prefix of $a$. In other words, Idnar wants to know the values of $f(a_1)$, $f(a_1$,$a_2)$, $\ldots$, $f(a_1$,$a_2$,$\ldots$,$a_n)$.

翻译中…

Input

翻译中…

The first line contains a single integer $n$ ($1 \le n \le 2 \cdot 10^5$) — the number of classes in the school.

翻译中…

The second line contains $n$ positive integers $a_1$, $a_2$, $\ldots$, $a_n$ ($1 \le a_i \le 10^9$) — the lengths of the class scenes.

翻译中…

Output

翻译中…

Print a sequence of $n$ integers in a single line — $f(a_1)$, $f(a_1$,$a_2)$, $\ldots$, $f(a_1$,$a_2$,$\ldots$,$a_n)$.

翻译中…

Note

翻译中…

In the first test we can change $1$ to $2$, so the answer is $1$.

翻译中…

In the second test:

翻译中…
  • $[1]$ can be changed into $[2]$,
  • $[1, 4]$ can be changed into $[3, 4]$,
  • $[1, 4, 2]$ can be changed into $[2, 3, 2]$.
翻译中…

样例

Input #1
1
1
Output #1
1
InputCopy OutputCopy
Input #2
3
1 4 2
Output #2
1 1 2
InputCopy OutputCopy
Input #3
7
2 12 4 8 18 3 6
Output #3
0 1 1 1 2 2 2
InputCopy OutputCopy
题目信息
题号
1632D
时间限制
3 s
内存限制
256 MB
标签
二分
数据结构
贪心
数学
数论
双指针

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。