Submit solution
Points:
120.00 (partial)
Time limit:
3.0s
Memory limit:
1024M
Input:
stdin
Output:
stdout
Author:
Problem type
Allowed languages
C, C++, GAS64, Pascal, Perl, PHP, Python, Sed, TCL, Text
Bài toán đơn giản: Hãy đếm xem có bao nhiêu mảng khác nhau ~a_1~,~a_2~,…,~a_n~ trong đó ~a_i~ nhận các giá trị nguyên dương trong đoạn [1,M] sao cho tồn tại ít nhất một đoạn K giá trị liên tiếp giống nhau?. Ở đây hai mảng được gọi là khác nhau nếu như tồn tại ít nhất một vị trí mà giá trị phần tử hai mảng ở vị trí này là khác nhau.
Input:
Một dòng duy nhất chứa ba số nguyên dương n,M,K (1≤n,M,K≤~10^6~)
Output:
Một số nguyên duy nhất là số lượng mảng khác nhau tìm được. Con số này có thể rất lớn nên bạn chỉ cần lấy phần dư của nó khi chia cho ~10^9~+7
Example:
Input
3 2 2
Output
6
Giải thích: Các mảng tìm được là (1, 1, 1), (1, 1, 2), (1, 2, 2), (2, 1, 1), (2, 2, 1), (2, 2, 2)
Comments