讨论 / 2
HYN 2011-04-20 21:14:00
点我顶贴 收藏 删除
222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222
#1 余可2代@2011-04-20 21:12:00
回复 删除
program p0602;

var

i,j,m,n:integer;

v,p:array[0..30] of longint;

f:array[0..30,-2..30000] of longint;

begin

fillchar(v,sizeof(v),0);

fillchar(p,sizeof(p),0);

fillchar(f,sizeof(f),0);

readln(n,m);

for i:=1 to m do begin

read(v[i],p[i]);

p[i]:=p[i]*v[i];

end;

for i:=1 to m do

for j:=1 to n do begin

f[i,j]:=f[i-1,j];

if (v[i]<=j)and(f[i-1,j]<f[i-1,j-v[i]]+p[i]) then

f[i,j]:=f[i-1,j-v[i]]+p[i];

end;

writeln(f[m,n]);

end.

#2 张湛二代@2011-04-20 21:12:00
回复 删除
program p0602;

var

i,j,m,n:integer;

v,p:array[0..30] of longint;

f:array[0..30,-2..30000] of longint;

begin

fillchar(v,sizeof(v),0);

fillchar(p,sizeof(p),0);

fillchar(f,sizeof(f),0);

readln(n,m);

for i:=1 to m do begin

read(v[i],p[i]);

p[i]:=p[i]*v[i];

end;

for i:=1 to m do

for j:=1 to n do begin

f[i,j]:=f[i-1,j];

if (v[i]<=j)and(f[i-1,j]<f[i-1,j-v[i]]+p[i]) then

f[i,j]:=f[i-1,j-v[i]]+p[i];

end;

writeln(f[m,n]);

end.

#3 板砖二代@2011-04-20 21:13:00
回复 删除
xgdgfdg
#4 板砖二代@2011-04-20 21:13:00
回复 删除
dfgdfg
#5 张湛二代@2011-04-20 21:13:00
回复 删除
program p0602;

var

i,j,m,n:integer;

v,p:array[0..30] of longint;

f:array[0..30,-2..30000] of longint;

begin

fillchar(v,sizeof(v),0);

fillchar(p,sizeof(p),0);

fillchar(f,sizeof(f),0);

readln(n,m);

for i:=1 to m do begin

read(v[i],p[i]);

p[i]:=p[i]*v[i];

end;

for i:=1 to m do

for j:=1 to n do begin

f[i,j]:=f[i-1,j];

if (v[i]<=j)and(f[i-1,j]<f[i-1,j-v[i]]+p[i]) then

f[i,j]:=f[i-1,j-v[i]]+p[i];

end;

writeln(f[m,n]);

end.

#6 xshch@2011-04-20 21:14:00
回复 删除
program p0602;

var

i,j,m,n:integer;

v,p:array[0..30] of longint;

f:array[0..30,-2..30000] of longint;

begin

fillchar(v,sizeof(v),0);

fillchar(p,sizeof(p),0);

fillchar(f,sizeof(f),0);

readln(n,m);

for i:=1 to m do begin

read(v[i],p[i]);

p[i]:=p[i]*v[i];

end;

for i:=1 to m do

for j:=1 to n do begin

f[i,j]:=f[i-1,j];

if (v[i]<=j)and(f[i-1,j]<f[i-1,j-v[i]]+p[i]) then

f[i,j]:=f[i-1,j-v[i]]+p[i];

end;

writeln(f[m,n]);

end.

查看更多回复
提交回复