#include<iostream>
#include<cstdio>
#define N 20
using namespace std;
int dp[N+1];
int main(){
int n, k;
cin >> n >> k;
dp[0] = 1;
for(int i=1;i<=n;i++){
for(int j=1;j<=k;j++){
if(i < j) break;
dp[i] += dp[i-j];
}
}
printf("%d",dp[n]);
return 0;
}
#include<iostream>
#include<cstdio>
#define N 20
using namespace std;
int dp[N+1];
int main(){
int n, k;
cin >> n >> k;
dp[0] = 1;
for(int i=1;i<=n;i++){
for(int j=1;j<=k;j++){
if(i < j) break;
dp[i] += dp[i-j];
}
}
printf("%d",dp[n]);
return 0;
}
30초걸림 ㄷㄷ
이렇게 하면 O(NK)가 되버리는데 O(N)방법도 짱구 쫌 굴리면 됨
그러네 ㄷㄷ 고수