20 lines
510 B
C++
20 lines
510 B
C++
|
|
#include <bits/stdc++.h>
|
|||
|
|
|
|||
|
|
using namespace std;
|
|||
|
|
const int N = 1010;
|
|||
|
|
int v[5] = {0, 10, 20, 50, 100};
|
|||
|
|
int f[N];
|
|||
|
|
|
|||
|
|
// 体积限制是恰好是,因此需要初始化f[0][0]为合法解1,其他位置为非法解0。
|
|||
|
|
int main() {
|
|||
|
|
int m;
|
|||
|
|
cin >> m;
|
|||
|
|
// 前0种物品,体积是0的情况下只有一种方案
|
|||
|
|
f[0] = 1;
|
|||
|
|
for (int i = 1; i <= 4; i++)
|
|||
|
|
for (int j = v[i]; j <= m; j++)
|
|||
|
|
f[j] += f[j - v[i]];
|
|||
|
|
// 输出
|
|||
|
|
printf("%d\n", f[m]);
|
|||
|
|
return 0;
|
|||
|
|
}
|