求助大神
pascal吧
全部回复
仅看楼主
level 2
求助大神,请问动归怎么编啊QAQ就是普通的背包问题
2017年10月28日 11点10分 1
level 5
var a:array[0..100000]of longint;{a数组范围适当定义大点,比如10000}
v,p,w,c:array[0..100]of longint;
n,m,i,j:longint;
begin
readln(m,n);{m代表可供选择的物品数量,n包的体积}
for i:=1 to m do
read(v[i],w[i]); {v[i],w[i]分别代表第i件物品的体积和价值}
for i:=1 to m do
for j:=n downto v[i] do {从放入第一件物品到第i件物品时体积的变化}
if a[j]<a[j-v[i]]+w[i] then a[j]:=a[j-v[i]]+w[i];{比较放入j-1件物品和放入j件物品时价值谁大}
writeln(a[n]);
readln;
readln;
end.
2017年12月01日 17点12分 2
level 5
2017年12月01日 17点12分 3
1