Submission #1075343
Source Code Expand
#include <bits/stdc++.h> using namespace std; typedef long double ld; typedef long long ll; const int mod = 1e9 + 7; int add(int x, int y) { x += y; if (x >= mod) x -= mod; return x; } int udd(int &x, int y) { return x = add(x, y); } int sub(int x, int y) { return add(x, mod - y); } int uub(int &x, int y) { return x = sub(x, y); } const int M = 4020; int d[M][M]; int n, m, k; void calc() { d[0][0] = 1; for (int len = 1; len < M; ++len) { int cur = 0; for (int sum = 0; sum < M; ++sum) { cur = add(cur, d[len - 1][sum]); if (sum >= k) cur = sub(cur, d[len - 1][sum - k]); d[len][sum] = cur; } } } void read() { cin >> n >> m >> k; } void kill() { int ans = 0; for (int sb = 1; sb <= m; ++sb) if (sb % (k - 1) == m % (k - 1)) { int len = (n + sb - 1) / (k - 1); ans = add(ans, d[len][sb]); } cout << ans << endl; } int main() { #ifdef LOCAL assert(freopen("e.in", "r", stdin)); #endif ios_base::sync_with_stdio(false); read(); calc(); kill(); }
Submission Info
Submission Time | |
---|---|
Task | E - Eternal Average |
User | Arterm |
Language | C++14 (GCC 5.4.1) |
Score | 1600 |
Code Size | 1135 Byte |
Status | AC |
Exec Time | 107 ms |
Memory | 63360 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 1600 / 1600 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | s1.txt, s2.txt, s3.txt |
All | 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 21.txt, 22.txt, 23.txt, 24.txt, s1.txt, s2.txt, s3.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
01.txt | AC | 106 ms | 63360 KB |
02.txt | AC | 106 ms | 63360 KB |
03.txt | AC | 106 ms | 63360 KB |
04.txt | AC | 106 ms | 63360 KB |
05.txt | AC | 106 ms | 63360 KB |
06.txt | AC | 106 ms | 63360 KB |
07.txt | AC | 106 ms | 63360 KB |
08.txt | AC | 106 ms | 63360 KB |
09.txt | AC | 106 ms | 63360 KB |
10.txt | AC | 106 ms | 63360 KB |
11.txt | AC | 100 ms | 63360 KB |
12.txt | AC | 96 ms | 63360 KB |
13.txt | AC | 105 ms | 63360 KB |
14.txt | AC | 105 ms | 63360 KB |
15.txt | AC | 106 ms | 63360 KB |
16.txt | AC | 96 ms | 63360 KB |
17.txt | AC | 103 ms | 63360 KB |
18.txt | AC | 106 ms | 63360 KB |
19.txt | AC | 106 ms | 63360 KB |
20.txt | AC | 107 ms | 63360 KB |
21.txt | AC | 107 ms | 63360 KB |
22.txt | AC | 106 ms | 63360 KB |
23.txt | AC | 106 ms | 63360 KB |
24.txt | AC | 106 ms | 63360 KB |
s1.txt | AC | 106 ms | 63360 KB |
s2.txt | AC | 106 ms | 63360 KB |
s3.txt | AC | 106 ms | 63360 KB |