Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int dp[105][2];
- int solve(int n, int k, int d, int cond) {
- if(n < 0)
- return 0;
- if(n == 0 && cond)
- return 1;
- if(dp[n][cond] != -1)
- return dp[n][cond];
- int res = 0;
- for(int i = 1; i <= k ; i++) {
- if(i >= d)
- cond = true;
- res = (res + solve(n - i, k, d, cond)) % mod;
- }
- return dp[n][cond] = res % mod;
- }
- int main() {
- ios_base::sync_with_stdio(false);
- cin.tie(0);
- int n, k, d;
- cin >> n >> k >> d;
- cout << solve(n, k, d, false) << endl;
- return 0;
- }
Add Comment
Please, Sign In to add comment