#include<stdio.h> int main(){ int a[500][500],m,n,i,j,k,l,t=0,h=0; while (scanf("%d%d",&m,&n)!=EOF) { for (i=0;i<m;i++) for (j=0;j<n;j++) scanf("%d",&a[i][j]); for (i=0;i<m;i++) for (j=0;j<n;j++){ k=i; l=j; flag=0; while (1){ if (k==0&&l==0){ if (a[k][l]-a[k+1][l]==-1){t++;k+=1;continue;} else if (a[k][l]-a[k][l+1]==-1){t++;l+=1;continue;} } else if (k==m-1&&l==n-1){ if (a[k][l]-a[k-1][l]==-1){t++;k-=1;continue;} else if (a[k][l]-a[k][l-1]==-1){t++;l-=1;continue;} } else if (k==0&&j==n-1){ if (a[k][l]-a[k+1][l]==-1){t++;k+=1;continue;} else if (a[k][l]-a[k][l-1]==-1){t++;l-=1;continue;} } else if (k==m-1&&l==0){ if (a[k][l]-a[k-1][l]==-1){t++;k-=1;continue;} else if (a[k][l]-a[k][l+1]==-1){t++;l+=1;continue;} } else if (k==0){ if (a[k][l]-a[k+1][l]==-1){t++;k+=1;continue;} else if (a[k][l]-a[k][l+1]==-1){t++;l+=1;continue;} else if (a[k][l]-a[k][l-1]==-1){t++;l-=1;continue;} } else if (k==m-1){ if (a[k][l]-a[k-1][l]==-1){t++;k-=1;continue;} else if (a[k][l]-a[k][l+1]==-1){t++;l+=1;continue;} else if (a[k][l]-a[k][l-1]==-1){t++;l-=1;continue;} } else if (l==0){ if (a[k][l]-a[k+1][l]==-1){t++;k+=1;continue;} else if (a[k][l]-a[k][l+1]==-1){t++;l+=1;continue;} else if (a[k][l]-a[k-1][l]==-1){t++;k-=1;continue;} } else if (l==n-1){ if (a[k][l]-a[k+1][l]==-1){t++;k+=1;continue;} else if (a[k][l]-a[k-1][l]==-1){t++;k-=1;continue;} else if (a[k][l]-a[k][l-1]==-1){t++;l-=1;continue;} } else if (a[k][l]-a[k+1][l]==-1){t++;k+=1;continue;} else if (a[k][l]-a[k-1][l]==-1){t++;k-=1;continue;} else if (a[k][l]-a[k][l+1]==-1){t++;l+=1;continue;} else if (a[k][l]-a[k][l-1]==-1){t++;l-=1;continue;} break; } h=h>t?h:t; t=0; } printf("%d\n",h); } return 0; } /* Main.c: In function 'main': Main.c:14:5: error: 'flag' undeclared (first use in this function) flag=0; ^ Main.c:14:5: note: each undeclared identifier is reported only once for each function it appears in */ |
Double click to view unformatted code.