TLE-oj Cup Round 5 - Xoay xâu

Xem PDF

Nộp bài


Điểm: 1400 (thành phần)
Thời gian: 1.0s
Bộ nhớ: 128M
Input: STRINGROT.inp
Output: STRINGROT.out

Tác giả:
Dạng bài

Cho một xâu s có độ dài n chỉ gồm các chữ cái la tinh thường. Định nghĩa một thao tác xoay xâu s là một thao tác biến xâu s_1s_2...s_n thành s_ns_1...s_{n-1}, hay nói cách khác, là chuyển ký tự cuối cùng của s lên đầu xâu. Gọi F_i là xâu s sau khi xoay được i thao tác. Hỏi rằng trong đa tập gồm các xâu F_0, F_1, ..., F_{n - 1}, xâu F_0 đứng thứ bao nhiêu về thứ tự từ điển (các xâu bằng nhau sẽ có thứ tự từ điển giống nhau).

Input, Output và Subtasks

Input: (STRINGROT.inp)
  • Một dòng duy nhất chứa xâu ký tự s.
Output: (STRINGROT.out)
  • Một dòng duy nhất là kết quả bài toán.
Subtasks
  • Subtask 1 (20\%): Xâu s có độ dài không quá 100.
  • Subtask 2 (20\%): Xâu s có độ dài không quá 1000.
  • Subtask 3 (20\%): Xâu s có độ dài không quá 10000.
  • Subtask 4 (20\%): Xâu s có độ dài không quá 100000.
  • Subtask 5 (20\%): Xâu s có độ dài không quá 1000000.

Sample 1

Input (STRINGROT.inp)
bca
Output (STRINGROT.out)
2
Notes
  • Ta có F_0 = bca, F_1 = cab, F_2 = abc. Do đó F_0 đứng thứ hai về thứ tự từ điển.

Sample 2

Input (STRINGROT.inp)
baba
Output (STRINGROT.out)
3
Notes
  • Ta có F_0 = baba, F_1 = abab, F_2 = baba, F_3 = abab. Do đó F_0 đứng thứ ba về thứ tự từ điển.

Bình luận

Không có bình luận nào.