10596: Суффіксний масив
Відправити розв'язок
Бали:
100 (partial)
Time limit:
1.0s
Memory limit:
256M
Author:
Problem type
Allowed languages
Brain****, C++, Java, Pascal, Python, v8js
Дано рядок. Потрібно побудувати суфіксний масив для цього рядка. Суфіксний масив - лексикографічно відсортований масив усіх суфіксів рядка. Кожен суфікс задається цілим числом – позицією початку.
Рядок \(s\) лексикографічно менший за рядок \(t\), якщо існує таке \(i\), що \(s_i < t_i\) і \(s_j = t_j\) для всіх \(j < i\). Або якщо такого \(i\) не існує і рядок \(s\) коротший за рядок \(t\).
Тут \(s_i\) - код \(i\)-го символу рядка \(s\).
Формат вхідних даних
Один рядок – англійський літературний текст. Довжина тексту поміщається \(10^5\) символів. Коди всіх символів тексту від 32 до 127.
Формат вихідних даних
Виведіть \(n\) чисел - суфіксний масив цього рядка.
Приклад вхідних даних
99 bottles of beer.
Приклад вихідних даних
14 3 11 19 2 1 15 4 16 17 9 13 8 12 5 18 10 7 6
Коментарі