hdup2069

    技术2022-07-12  73

    http://acm.hdu.edu.cn/showproblem.php?pid=2069

    #include<iostream> using namespace std; int dp[251][101]; int type[5] = { 1, 5, 10, 25, 50 }; void solve(){ dp[0][0] = 1; for (int i = 0; i < 5; i++){ for (int j = 1; j <= 100; j++){ for (int k = type[i]; k <= 250; k++){ dp[k][j] += dp[k - type[i]][j - 1]; } } } } int main(){ int s; int ans[251] = {0}; solve(); for (int i = 0; i <= 250; i++){ for (int j = 0; j <= 100; j++){ ans[i] += dp[i][j]; } } while (cin >> s){ cout << ans[s] << endl; } return 0; }
    Processed: 0.009, SQL: 9