EduBrick

J. Наибольший сдвиг

3000 мс · 256 МБ · всё или ничего

Среди всех циклических сдвигов строки найдите лексикографически наибольший и выведите наименьшую позицию, с которой он начинается.

Алгоритм тот же, что в классе, но знак сравнения переворачивается: проигравшим считается тот кандидат, у которого символ меньше.

Досборка наименьшей позиции нужна ровно так же: у периодичной строки наибольший сдвиг тоже встречается несколько раз.

Если хочется проверить себя другим способом: наибольший сдвиг строки ss — это наименьший сдвиг строки, в которой каждая буква заменена на противоположную по алфавиту. Способ рабочий, но лишний; менять знак проще.

Формат ввода

Одна строка длины nn (1≤n≤1061 \le n \le 10^6) из строчных латинских букв.

Формат вывода

Одно число — наименьшая позиция (нумерация с нуля), с которой начинается лексикографически наибольший циклический сдвиг.

Примеры

ввод
abab
вывод
1
ввод
cba
вывод
0
Войдите, чтобы отправлять решения.