Codeforces Round 671 Div 1 C (предельная изменчивость массива)

Codeforces 671 Div 1 C (предельная сложность массива)

Пусть vi есть b1, b2, b3...bk. Обратите внимание, что наш l - r должен покрывать как минимум k - 1 этих индексов. l должен быть меньше или равен b2.

Я смог понять первую часть решения, но может кто-нибудь объяснить приведенное выше утверждение.

редакционная ссылка


person shubi_SnowFly    schedule 18.05.2016    source источник


Ответы (2)


Потому что если (l-r) покрывает менее k-1 индексов, то должны быть x, y такие, что bx и by выходят за диапазон [l, r], а поскольку i | a[bx], i | a[by], то gcd(a[bx], a[by]) >= i, что неверно, потому что вы обновляете next с i на i-1.

Поскольку (l-r) покрывает как минимум k-1 элементов b1, ..., bk, поэтому l должно быть меньше или равно b2.

person delta    schedule 18.05.2016
comment
Я думаю, что понимаю, о чем ты говоришь, но я все еще не полностью убежден в их редакционной статье, что они делают и почему. - person shubi_SnowFly; 20.05.2016

определить значение F(l,r) указать подпоследовательность A[1:n].

A[1....(l-1),(r+1)....] для вычисления максимального НОД(A[i],A[j])


Сумма = ∑ ∑F(i,j) (i!=j)

person 蒋振斌    schedule 06.06.2016