我可能学了一个假背包【或者我根本没学会】

P1048 [NOIP2005 普及组] 采药

好像是数组越界了
by 润皮 @ 2019-11-12 21:04:28


@[洛谷亿岁](/user/122605) 道理我都懂,但是你 V 减一个 1 是啥神仙操作
by Meatherm @ 2019-11-12 21:04:35


@[兹磁洛谷](/user/108949) 我下标从0开始的awa
by 灵光一闪 @ 2019-11-12 21:05:35


@[润皮](/user/188777) 出门左转题目找数据范围不谢awa
by 灵光一闪 @ 2019-11-12 21:06:09


@[空与白之灵](/user/232789) 哪里鸭awa【烦请明示awa】
by 灵光一闪 @ 2019-11-12 21:07:13


这就是你访问 `f[-1]` 的理由?
by 小粉兔 @ 2019-11-12 21:07:14


```cpp #include<iostream> #include<algorithm> #include<stdio.h> #include<cstdio> using namespace std; int v[2333]; int w[2333]; int f[2333][2333]; int main() { int n,V; cin>>V>>n; for(int i=1; i<=n; i++) cin>>w[i]>>v[i]; for(int i=1; i<=n; i++) for(int j=V; j>=0; j--) { if(j>=w[i]) f[i][j]=max(f[i-1][j-w[i]]+v[i],f[i-1][j]); else f[i][j]=f[i-1][j]; } cout<<f[n][V]<<endl; return 0; } ``` 帮你改了一下,ac了
by 润皮 @ 2019-11-12 21:07:26


惊现兔队
by Meatherm @ 2019-11-12 21:08:58


i=0不就数组越界了。。。
by haohaoh4 @ 2019-11-12 21:10:36


@[小粉兔](/user/10703) 谢谢兔队指正awa,也就是说背包只能从下标为1的地方循环吗awa
by 灵光一闪 @ 2019-11-12 21:10:43


| 下一页