1 条题解

  • 0
    @ 2025-9-10 0:11:58

    Pascal :

    const
      dx:array[1..4]of longint=(-1,0,1,0);
      dy:array[1..4]of longint=(0,-1,0,1);
    var
      a,f:array[0..101,0..101]of longint;
    	i,j,n,m,max,tt:longint;
    function search(x,y:longint):longint;
    var
      i,cx,cy,tmp,t:longint;
    begin
      if f[x,y]>0 then exit(f[x,y]);
    	t:=1;
    	for i:=1 to 4 do begin
    	  cx:=x+dx[i];cy:=y+dy[i];
    		if (cx>=1)and(cx<=n)and(cy>=1)and(cy<=m)and(a[cx,cy]<a[x,y]) then begin
    			tmp:=search(cx,cy)+1;
    			if tmp>t then t:=tmp;
    		end;
    	end;
    	f[x,y]:=t;
    	exit(t);
    end;
    begin
      readln(n,m);
    	for i:=1 to n do
    		for j:=1 to m do
    			read(a[i,j]);
    	for i:=1 to n do
    		for j:=1 to n do
    			begin
    				tt:=search(i,j);
    				f[i,j]:=tt;
    				if f[i,j]>max then max:=f[i,j];
    			end;
    	write(max);
    end.
    
    • 1

    信息

    ID
    3216
    时间
    1000ms
    内存
    128MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者