Mã bí mật
Nộp bài giải
Điểm:
1,00 (OI)
Giới hạn thời gian:
1.0s
Python 3
5.0s
Giới hạn bộ nhớ:
256M
Đầu vào:
stdin
Đầu ra:
stdout
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C++, Go, Java, Kotlin, Pascal, Python, Scratch
Một xâu được gọi là mã hóa nếu nó có thể được tạo ra từ một xâu nguồn () qua một hoặc nhiều bước. Mỗi bước áp dụng lên xâu hiện tại :
- Xóa một số ký tự ở đầu hoặc ở cuối của (nhưng không xóa tất cả ký tự — cần giữ lại ít nhất 1 ký tự);
- Ghép xâu ban đầu vào đầu hoặc cuối kết quả sau khi xóa.
Kết quả sau tất cả các bước phải là .
Cho xâu , hãy đếm số cách tạo ra theo mô tả trên (modulo ). Hai cách được coi là khác nhau nếu chúng khác nhau ở bất kỳ bước nào (kể cả khi cùng tạo ra kết quả trung gian giống nhau).
Dữ liệu vào
Một dòng duy nhất chứa xâu (chỉ gồm chữ hoa A–Z).
Dữ liệu ra
Một số nguyên — số cách tạo ra modulo .
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| ABABA | 8 | Có 8 cách tạo ra "ABABA" từ các xâu nguồn khác nhau. |
| AAAAAAAAAAAAAAAAAAAA | 1538 |
Bình luận