접미사 배열 2

문자열의 모든 접미사를 사전순으로 정렬한 뒤, 각 접미사의 시작 위치를 순서대로 출력합니다.

보통7문자열정렬문자열 매칭아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

문자열 SS의 접미사 배열은 SS의 모든 접미사를 사전순으로 정렬한 배열이다.

banana의 접미사는 banana, anana, nana, ana, na, a로 모두 6개이고, 사전순으로 정렬하면 a, ana, anana, banana, na, nana가 된다.

각 접미사는 시작하는 문자의 위치로 번호를 매긴다. 위치는 0부터 세므로 banana는 0번 접미사, ana는 3번 접미사이다.

문자열 SS가 주어지면 모든 접미사를 사전순으로 정렬한 다음 접미사 번호를 차례대로 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 문자열 SS가 주어진다. SS는 알파벳 소문자로만 이루어져 있고, 길이는 1 이상 100,000 이하이다.

출력

접미사를 사전순으로 정렬한 순서대로, 접미사 번호를 한 줄에 하나씩 출력한다.

힌트

SS가 abcdabcabb이면 정렬한 접미사와 그 번호는 다음과 같다.

  • 7: abb
  • 4: abcabb
  • 0: abcdabcabb
  • 9: b
  • 8: bb
  • 5: bcabb
  • 1: bcdabcabb
  • 6: cabb
  • 2: cdabcabb
  • 3: dabcabb