PKU-3624
代碼 //0-1背包問題??如果不使用循環(huán)數(shù)組,空間越界。
#include?<stdio.h>
int?main()
{
????int?n,?v,?i,?j;
????int?w[3403],?p[3403];
????int?f[12881];
????scanf("%d?%d",?&n,?&v);
????for(i?=?1;?i?<=?n;?i++)
????????scanf("%d?%d",?&w[i],?&p[i]);
????for(i?=?0;?i?<=?v;?i++)
????????f[i]?=?0;
????for(i?=?1;?i?<=?n;?i++)?{
????????for(j?=?v;?j?>=?w[i];?j--)?{
????????????if(f[j?-?w[i]]?+?p[i]?>?f[j])
????????????????f[j]?=?f[j?-?w[i]]?+?p[i];
????????}
????}
????printf("%d\n",f[v]);
????return?0;
}
#include?<stdio.h>
int?main()
{
????int?n,?v,?i,?j;
????int?w[3403],?p[3403];
????int?f[12881];
????scanf("%d?%d",?&n,?&v);
????for(i?=?1;?i?<=?n;?i++)
????????scanf("%d?%d",?&w[i],?&p[i]);
????for(i?=?0;?i?<=?v;?i++)
????????f[i]?=?0;
????for(i?=?1;?i?<=?n;?i++)?{
????????for(j?=?v;?j?>=?w[i];?j--)?{
????????????if(f[j?-?w[i]]?+?p[i]?>?f[j])
????????????????f[j]?=?f[j?-?w[i]]?+?p[i];
????????}
????}
????printf("%d\n",f[v]);
????return?0;
}
轉(zhuǎn)載于:https://www.cnblogs.com/rebirth2009/archive/2009/11/28/1612731.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
- 上一篇: NHibernate之旅(4):探索查询
- 下一篇: 高等数学(第七版)同济大学 习题1-8