Спасительная загадка
시간 제한1초메모리 제한1024 MB
길이 n인 배열 b가 주어질 때, 어떤 정수 배열 a가 a[i] - a[(i+x) mod n] = b[i]를 만족하는 모든 시프트 x(1 이상 n-1 이하)를 찾는다.
문제
Загадочник похищает окружного прокурора Джила Колсона.
Чтобы спастись, Колсон должен отгадать три загадки. Бэтмен помогает ему отгадать первые две, но третья загадка оказалась слишком сложной. Сможете ли вы помочь ему с отгадкой?
Загадка устроена следующим образом:
- Загадочник записал и спрятал массив целых чисел длины .
- Затем он циклически сдвинул его на какую-то величину влево, после чего полученный сдвиг поэлементно вычел из исходного массива.
- Полученный в результате массив (иными словами, массив, в котором для всех ), Загадочник сообщил Колсону.
Требуется по данному массиву восстановить все возможные величины сдвига , которые могли привести к получению такого массива из какого-то массива .
입력
В первой строке ввода дано единственное целое число --- длина исходного массива ().
Во второй строке через пробел перечислены целых чисел , , \ldots, --- элементы полученного Загадочником массива ().
출력
Выведите через пробел целое число, -е из которых равно , если могло иметь место, и иначе.
힌트
В первом примере такой массив мог быть получен, например, из массива сдвигом на влево или из массива сдвигом на влево.
В первом примере данный массив ни при каком не мог быть получен сдвигом на , а для сдвигов или , например, подошли бы массивы и , соответственно.
Для третьего примера можно показать, что такой в принципе не мог быть получен описанным в условии образом.