- #include<stdio.h>
- int main()
- {
- int a[3] = { 1,2,5 };
- int n;
- scanf("%d", &n);
- . int c[1000] = { 0 };
- c[0] = 1;
- for (int x = 0; x < 3; x++)
-
{
-
for (int y = 1; y <= n; y++)
-
{
-
if (y >= a[x])
-
{
-
c[y] += c[y - a[x]];
-
}
-
}
-
}
-
printf("%d", c[n]);
- }//典型的完全背包问题,可以运用dp来做