vijos p1104(采药)(0-1背包)
今天DP第二道题,采药,其实就是背包问题,不知道要是没看教程会不会做,但是没有看源码编出来,也算是一个不小的进步,嘿嘿。
1 program P1104; 2 uses math; 3 var 4 t,v:array[1..1001] of longint; 5 f:array[0..1001,0..1001]of longint; 6 t1,m,i,j,k,l:longint; 7 begin 8 fillchar(f,sizeof(f),0); 9 read(t1,m); 10 for i:=1 to m do 11 read(t[i],v[i]); 12 for i:=1 to m do 13 for j:=1 to t1 do 14 if j>=t[i] then 15 f[i,j]:=max(f[i-1,j-t[i]]+v[i],f[i-1,j]) 16 else f[i,j]:=f[i-1,j]; 17 write(f[m,t1]); 18 end.