讨论 / 为什么只有80 啊啊啊啊啊啊啊啊啊
zhzq1865 2011-10-06 19:00:00
点我顶贴 收藏 删除
var

i,j,k,m,n,max:integer;f,a:array[0..101,0..101]of integer;

function max1(x,y:integer):integer;

begin

if x>y then max1:=x else max1:=y;

end;

begin

readln(n,m);

for i:=1 to n do

for j:=1 to m do

begin

read(a[i,j]);

f[i,j]:=1;

end;

max:=0;

for i:=1 to n*m do

for j:=1 to n do

for k:=1 to m do

if (a[j,k]>a[j+1,k])and(a[j,k]>a[j-1,k])

and(a[j,k]>a[j,k+1])and(a[j,k]>a[j,k-1]) then f[j,k]:=1 else begin

if a[j,k]<a[j+1,k] then f[j,k]:=max1(f[j,k],f[j+1,k]+1);

if a[j,k]<a[j-1,k] then f[j,k]:=max1(f[j,k],f[j-1,k]+1);

if a[j,k]<a[j,k+1] then f[j,k]:=max1(f[j,k],f[j,k+1]+1);

if a[j,k]<a[j,k-1] then f[j,k]:=max1(f[j,k],f[j,k-1]+1);

if f[j,k]>max then max:=f[j,k];

end;

writeln(max);

end.

查看更多回复
提交回复