interesting
by 听风吟 @ 2017-08-19 11:26:59
建议学背包哦 @[风染、暮黎](/space/show?uid=36841)
动归的代码真的很短
by ytxytx @ 2017-08-21 08:49:00
嗯,是的。
这题是01背包问题。
by 风染、暮黎 @ 2017-08-22 08:24:38
这就是贪心啊
by Jianuo_Zhu @ 2017-09-04 21:07:27
interesting
by strangers @ 2017-09-11 05:25:26
666
还有这种做法。。。
by 战音_lorra @ 2017-09-29 20:25:42
interesting
by Wichiene @ 2017-10-07 22:04:54
因吹思挺
by Altria_Pendragon_ @ 2017-10-14 21:58:41
就我01背包5个点TLE吗????
by hyzaoia @ 2017-10-29 20:07:43
```cpp
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,c;
int w[1001];//重量:付出的代价:包子
int m[1001];//价值:得到的利润:挣钱
int f[1001][5000];//f[i][j]表示前i件物品总重量为j的
int i,j;
cin>>n;
for(i=1;i<=n;i++)
cin>>w[i];
cin>>c;//读入卡车的运载重量
//ya[j]:j是重量,物品滚动了,压缩只剩下j
m[0]=true;//!!!边界,容量为0的认为是满的
//***边界值表示容量是0不装物品就是满的
//剩下的m[1]……m[20000]都是0表示没有装满
for(i=1;i<=n;i++)
for(j=c;j>=w[i];j--)
m[j]=m[j]||m[j-w[i]];
//从最大价值向0找第一个装满
//卡车c=100吨 m[98]=1;m[100]=0
for(k=c;k>=0;k--)
if(m[k]==1)//能装满的最大空间k
{
cout<<c-k<<endl;
return (c-k);
}
}
return 0;
}
```
by ‘装逼之王’ @ 2017-10-29 20:28:02