T8STPD - String Periodik
String Periodik
Deskripsi
Sebuah string dikatakan “periodik” jika terdapat sebuah string lain yang berulang-ulang secara teratur pada string tersebut lebih dari satu kali. Secara formal, sebuah string disebut periodik jika terdapat string dan sebuah bilangan asli m>1 sehingga
s= t+t+⋯+t (m kali).
Sebagai contoh, string “ababab” adalah string periodik, karena kita dapat memilih dan sehingga syarat di atas terpenuhi; string “xyzxyz” juga periodik dengan dan . Namun, string “abcabcd” dan “pqrpqrpq” keduanya bukan merupakan string periodik.
Tentukan banyaknya string yang periodik, jika diketahui bahwa panjang string tersebut adalah dan terdapat pilihan karakter yang dapat digunakan.
Format Masukan
Masukan berisi dua buah bilangan bulat, dan , yang berturut-turut menyatakan panjang string dan banyak pilihan karakter yang dapat digunakan.
Format Keluaran
Tuliskan banyaknya string yang memenuhi deskripsi di atas, modulo 1000000007 .
Contoh Masukan |
Contoh Keluaran |
6 2 |
10 |
999999999 99 |
559079884 |
Penjelasan
Untuk kasus uji pertama, misalkan karakter yang diperbolehkan adalah 'a' dan 'b'. Maka, string periodik yang memenuhi ada 10 buah, yaitu "aaaaaa", "ababab", "aabaab", "abaaba", "abbabb", "baabaa", "babbab", "bbabba", "bababa", "bbbbbb".
Batasan
- 1 ≤ N ≤ 1000000000 (10^9).
- 1 ≤ K ≤ 100.
-
Batasan waktu adalah 1 detik, dan batasan memori adalah 32 MB.
hide comments
|
(Tjandra Satria Gunawan)(曾毅昆):
2014-12-25 22:54:30
Problem hidden, click here for explanation why this problem is hidden. |
Added by: | Aufar Gilbran |
Date: | 2012-09-22 |
Time limit: | 0.200s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | All except: ASM64 |