[Beginner Free Contest 31] TYPING
Xem dạng PDFHuy đang tạo bài tập cho kỳ thi sắp tới thì bàn phím bị hỏng, khiến cho khi một phím bị nhấn thì một số ký tự liên tiếp sẽ được tạo ra thay vì chỉ một. Ví dụ, Huy muốn gõ xâu typing, nhưng vì bàn phím bị hỏng nên kết quả tạo ra là xâu bị lỗi tyypppinng.
Huy muốn tìm lại xâu ban đầu từ xâu bị lỗi, nhưng Huy nhận ra là có rất nhiều xâu như vậy. Ví dụ như xâu typing và tyyping đều có thể tạo ra xâu lỗi tyypppinng, nhưng xâu typiing thì không thể tạo ra xâu lỗi tyypppinng.
Cho xâu bị lỗi, bạn hãy giúp Huy tìm số lượng xâu mà có thể tạo nên xâu bị lỗi đó.
Dữ liệu
Gồm một dòng duy nhất chứa xâu ~S~ chỉ gồm các chữ cái in thường là xâu bị lỗi ~(|S| \le 10^5)~.
Kết quả
Gồm một dòng là số lượng xâu mà có thể tạo nên xâu bị lỗi ~S~. Vì kết quả có thể rất lớn nên bạn hãy in kết quả theo phần dư khi chia cho ~10^9 + 7~.
Ví dụ
Sample Input
tyypppinng
Sample Output
12
Bình luận