Logo
(追記) (追記ここまで)

30845번 - Вася и Циклические Сдвиги 다국어

시간 제한메모리 제한제출정답맞힌 사람정답 비율
0.6 초 1024 MB70382674.286%

문제

Однажды Василий проголодался и пошел на кухню подкрепиться. Но каково было его удивление, когда, открыв холодильник, он обнаружил там не привычные продукты, а строку! Причем не просто строку, а зацикленную, прямо как бублик (ассоциации с едой часто приходят Васе в голову, когда он голоден). Загадочная строка заинтересовала любопытного, но все еще голодного Василия, и он начал ее вертеть в руках. Например, если вертеть строку abacaba, то можно получить следующие строки:

  • abacaba
  • bacabaa
  • acabaab
  • cabaaba
  • abaabac
  • baabaca
  • aabacab

И тут Василия осенило: если он сможет посчитать, сколько раз в процессе кручения строки получается лексикографически минимальная строка, то еда магическим образом появится в холодильнике (странные идеи часто приходят Васе в голову, когда он голоден). Помогите Васе, иначе он так и будет сидеть голодным.

Более формально, вам дана строка. Циклическим сдвигом строки s длины n называется строка, полученнная из исходной путем отбрасывания первых 0 ⩽ k < n символов и приписывания их в конец. Необходимо посчитать, сколько раз среди всех циклических сдвигов строки встречается лексикографически минимальный циклический сдвиг.

입력

Единственная строка входного файла содержит строку S, найденную Василием. Она непуста, состоит из маленьких латинских букв, и её длина не превосходит 10 000 000.

출력

Выведите единственное число — искомое количество минимальных циклических сдвигов.

제한

예제 입력 1

aaaa

예제 출력 1

4

예제 입력 2

abacaba

예제 출력 2

1

힌트

출처

Olympiad > Moscow Open Olympiad in Informatics > Moscow Open Olympiad in Informatics Qualification 2013-14 E번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /