Время

16:24:51
10 Февраля 2012
Пятёрка за неделю 22
Осталось: 2 дня
Конец: 11.02.2012 22:00
Лидер: knightL
Версия для печати

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

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

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

S[i] + S[i1] + S[i2] + … + S[ik+1],

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

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


Технические условия

   Входные данные

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

   Выходные данные

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


Информация о задаче

Лимит времени: 1 секунда
Лимит памяти: 64 MB
Баллы за пройденный тест: 4.54545
Сложность: 40% 12/20

Пример

Пример входных данных

5
aabaa

Пример выходных данных

1 2 0 1 5


← Игра Список задач Цирковое шоу →