sisi 2007-08-28 03:19:00
点我顶贴
收藏
删除
program gfpascal
var
f,g:array[0..100,0..100] of longint
n,i,j,k,m,s,r,time:longint
a,b,c:array[1..100] of longint
begin
read(n)
for i:=1 to n do
read(a[i],b[i],c[i])
fillchar(f,sizeof(f),0)
fillchar(g,sizeof(g),0)
read(m,r)
for i:=1 to n do
for j:=m downto a[i] do
for k:=r downto b[i] do
begin
if f[j,k]=f[j-a[i],k-b[i]]+1 then
if g[j,k]>g[j-a[i],k-b[i]]+c[i] then
g[j,k]:=g[j-a[i],k-b[i]]+c[i]
if f[j,k]<f[j-a[i],k-b[i]]+1 then
begin
f[j,k]:=f[j-a[i],k-b[i]]+1
g[j,k]:=g[j-a[i],k-b[i]]+c[i]
end
end
write(g[m,r])
end.
不幸的是1,2,10组超时...