题目:http://www.joyoi.cn/problem/tyvj-1172
非常水的完全背包。物品就是1~n这n个数。
第6行有橙色的警告:this decimal constant is unsigned only in ISO C90 [ enabled by default ]。不明所以,留待解释。
#include<iostream> #include<cstdio> #include<cstring> using namespace std; int n; const long long p=2147483648; long long d[4005]; int main() { scanf("%d",&n); d[0]=1; for(int i=1;i<n;i++) for(int j=i;j<=n;j++) d[j]=(d[j]+d[j-i])%p; printf("%lld",d[n]); return 0; }