永发信息网

pascal难题

答案:1  悬赏:80  手机版
解决时间 2021-11-10 00:00
  • 提问者网友:沦陷
  • 2021-11-09 12:43
pascal难题
最佳答案
  • 五星知识达人网友:青尢
  • 2021-11-09 13:36
const fx1:array[1..4]of integer=(0,0,-1,1);
fx2:array[1..4]of integer=(-1,1,0,0);
var a:array[0..101,0..101] of longint;
b:array[0..101,0..101] of longint;
i,j,k,m,n,s,zb1,zb2:longint;
function jf:longint;
begin
jf:=0;
for i:=1 to n do
for j:=1 to n do
begin
zb1:=i+fx2[m];
zb2:=j+fx1[m];
while (a[zb1,zb2]=0)and(b[zb1,zb2]=0) do
begin
zb1:=zb1+fx2[m];
zb2:=zb2+fx1[m];
end;
if (a[i,j]=a[zb1,zb2])and(b[zb1,zb2]=0) then
begin
a[i,j]:=a[i,j]*2;
a[zb1,zb2]:=0;
jf:=jf+a[i,j];
b[i,j]:=1;
b[zb1,zb2]:=1;
end;

end;
end;
begin
fillchar(b,sizeof(b),0);
fillchar(a,sizeof(a),1);
readln(n,m);
for i:=1 to n do
begin
for j:=1 to n do read(a[i,j]);
readln;
end;
s:=jf;
writeln(s);
end.
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯