fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int N,K;
  5. const int MOD=1000000000;
  6. long long dp[201][201];
  7. void Input(){
  8. cin>>N>>K;
  9. }
  10. void solve(){
  11. for(int i=0;i<=N;++i){
  12. dp[i][1]=1;
  13. }
  14. for(int i=1;i<=K;++i){
  15. dp[0][i]=1;
  16. }
  17. for(int i=1;i<=N;++i){
  18. int m=i/2;
  19. if(i%2==0){
  20. dp[i][2]=1+i;
  21. }else{
  22. dp[i][2]=(m+1)*2;
  23. }
  24. }
  25. for(int i=3;i<=K;++i){
  26.  
  27. for(int j=1;j<=N;++j){
  28.  
  29. long long sum=0;
  30. for(int u=j;u>=0;--u){
  31. sum+=(dp[j-u][i-1])%MOD;
  32. }
  33. dp[j][i]=sum%MOD;
  34. }
  35. }
  36. }
  37.  
  38. int main() {
  39. Input();
  40. solve();
  41. cout<<dp[N][K];
  42. }
Success #stdin #stdout 0s 4300KB
stdin
10 3
stdout
66