import java.util.Scanner; public class Main{ public static void main(String[] args) { // TODO Auto-generated method stub Scanner scanner=new Scanner(System.in); int r=scanner.nextInt(); int c=scanner.nextInt(); int[][] ints=new int[r][c]; for(int i=0;i<r;i++) { for(int j=0;j<c;j++) { ints[i][j]=scanner.nextInt(); } } for(int i=0;i<r;i++) { for(int j=0;j<c;j++) { dfs(ints, i, j, 1); } } System.out.println(max); } private static int[][] next=new int[][] {{1,0},{0,1},{-1,0},{0,-1}}; private static int max=0; public static void dfs(int[][] ints,int i,int j,int dis) { if(dis>max) { max=dis; } for(int t=0;t<4;t++) { int x=i+next[t][0]; int y=j+next[t][1]; if(x>=0&&x<ints.length&&y>=0&&y<ints[0].length&&ints[x][y]<ints[i][j]) { dis++; dfs(ints,x,y,dis); dis--; } } } } |
Double click to view unformatted code.