讨论 / 0+1不等于0?
xiaohuhu525 2009-04-21 03:43:00
点我顶贴 收藏 删除
敬请大牛帮忙!!!

我编GF这题时有一个操作

b[j1,k1]:=0;b[j,k]:=0;

b[j1,k1]:=b[j,k]+1;

其中j1=1,k1=2,j=0,k=0

但是b[j1,k1]居然等于0

弄了N久,我已经无语至极了

附完整程序(编译、运行都无错,但结果错):

program gf;

var

a:array[1..1000,1..1000] of longint;

b:array[0..1000,0..1000] of longint;

c:array[0..20] of longint;

i,j,n,m,r,t,k,j1,k1:longint;

f1,f2:text;

begin

assign(f1,’gf.in’);assign(f2,’gf.out’);reset(f1);rewrite(f2);

readln(f1,n);

for i:=1 to n do

for j:=1 to 3 do

read(f1,a[i,j]);

read(f1,m,r);

for i:=1 to n do

begin

for j:=m downto 0 do

for k:=r downto 0 do

begin

if ((j=0) and (k=0)) or (b[j,k]<>0) then

begin

j1:=j+a[i,1];k1:=k+a[i,2];

if (j1<=m) and (k1<=r) then

begin

b[j1,k1]:=b[j,k]+1;

t:=a[i,3]+c[b[j,k]];

if c[b[j1,k1]]=0 then c[b[j1,k1]+1]:=t

else

if t<c[b[j1,k1]+1] then c[b[j1,k1]+1]:=t;

end;

end;

end;

end;

t:=0;

for i:=n downto 1 do

if c[i]<>0 then

begin

t:=c[i];break;

end;

write(f2,t);

close(f1);close(f2);

end.

查看更多回复
提交回复