1 条题解

  • 0
    @ 2023-3-13 12:02:44

    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

    信息

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