fork download
  1. #include <iostream>
  2. #define MIN 1000000000
  3.  
  4. using namespace std;
  5.  
  6. int main(void)
  7. {
  8. int n, sum = 0;
  9. int dp[101][10] = { 0, };
  10. cin >> n;
  11. for (int i = 0; i < 10; i++)
  12. dp[1][i] = 1;
  13.  
  14. for (int i = 2; i <= n; i++)
  15. {
  16. for (int j = 0; j < 10; j++)
  17. {
  18. if (j == 0) dp[i][0] = dp[i - 1][1] % MIN; //수가 0일 경우
  19. else if (j == 9) dp[i][9] = dp[i - 1][8] % MIN; //수가 9일 겨우
  20. else dp[i][j] = (dp[i - 1][j + 1] + dp[i - 1][j - 1]) % MIN; //수가 1~8일 경우
  21. }
  22. }
  23. for (int i = 1; i < 10; i++)
  24. sum = (sum + dp[n][i]) % MIN;
  25. cout << sum;
  26. return 0;
  27. }
Success #stdin #stdout 0s 4788KB
stdin
2
stdout
17