1 solutions
-
0
C++ :
#include<bits/stdc++.h> using namespace std; int fx[] = {-1,0,1,0,-1,-1,1,1}; //i方向 int fy[] = {0,1,0,-1,-1,1,1,-1}; //j方向 int R,C,a[51][51]; int main(){ cin>>R>>C; int i,j,k,t,oi,oj,mx=INT_MIN; for(i=1;i<=R;i++) for(j=1;j<=C;j++) cin>>a[i][j]; for(i=1;i<=R;i++) { for(j=1;j<=C;j++) { //0的时候 跳过 if(a[i][j]==0) continue; t = 0; //方向数组 for(k=0;k<8;k++) { oi = i + fx[k]; oj = j + fy[k]; if(oi>=1&&oi<=R&&oj>=1&&oj<=C&&a[oi][oj]==a[i][j]) { t++; } } if(t>0){ mx = max(mx,a[i][j]); } } } cout<<mx; return 0; }
- 1
Information
- ID
- 9959
- Time
- 1000ms
- Memory
- 128MiB
- Difficulty
- (None)
- Tags
- # Submissions
- 0
- Accepted
- 0
- Uploaded By