eolymp
bolt
Try our new interface for solving problems
Məsələlər

A-функция от строчки

A-функция от строчки

Zaman məhdudiyyəti 1 saniyə
Yaddaşı istafadə məhdudiyyəti 128 MiB

Дана строка S, состоящая из n символов. Определим функцию A(i) от первых i символов этой сроки следующим образом: A(i) равно такому максимально возможному k, что равны следующие строки:

S[1] + S[2] + S[3] + ... + S[k],

S[i] + S[i-1] + S[i-2] + ... + S[i-k+1],

где S[i] - i-ый символ строки S, а знак + означает, что символы записываются в строчку непосредственно друг за другом.

Напишите программу, которая вычислит значения функции A для заданной строчки для всех возможных значений i от 1 до n.

Giriş verilənləri

В первой строке записано одно число n (1n200000). Во второй строке записана строка длиной n символов, состоящая только из больших и (или) маленьких латинских букв.

Çıxış verilənləri

Выведите n чисел - значения функции A(1), A(2), ... A(n).

Nümunə

Giriş verilənləri #1
5
aabaa
Çıxış verilənləri #1
1 2 0 1 5