讨论 / 大牛们帮帮看错哪儿阿…………!!
fishlong 2011-05-24 22:21:00
点我顶贴 收藏 删除
program duoduo2;

var

n,m,l:integer;

i,j:integer;

k:longint;

t,v:array[1..200] of longint;

f:array[0..2000,0..200] of longint;

function max(a,b:longint):Longint;

begin

if a>b then exit(a) else exit(b);

end;

begin

readln(n,m,l);

for i:=1 to n do readln(t[i],v[i]);

for i:=0 to l do

for j:=1 to m do f[i,j]:=-maxlongint;

for i:=1 to i do

for j:=l downto t[i] do

for k:=m downto 1 do

f[j,k]:=max(f[j,k],f[j-t[i],k-1]+v[i]);

k:=f[0,m];

for i:=1 to l do if f[i,m]>k then k:=f[i,m];

if k>=0 then writeln(k) else writeln('0');

end.

查看更多回复
提交回复