1 条题解

  • 1

    对每个点进行遍历,查看他四周有几个.,然后如果只有一个就直接输出1,如果都没有那就最后输出0

    #include<bits/stdc++.h>
    using namespace std;
    int main(){
        int n,m;
        char a[12][12];
        cin>>n>>m;
        for(int i=1;i<=n;i++)
            for(int j=1;j<=m;j++) cin>>a[i][j];
        for(int i=1;i<=n;i++)
            for(int j=1;j<=m;j++){
                if(a[i][j]=='.'){
                    int q=0;
                    if(a[i+1][j]=='.') q++;
                    if(a[i-1][j]=='.') q++;
                    if(a[i][j+1]=='.') q++;
                    if(a[i][j-1]=='.') q++;
                    if(q==1){
                        cout<<1;
                        return 0;
                    }
                }
            }
        cout<<0<<endl;
        return 0;
    }
    
    
    • 1

    信息

    ID
    60
    时间
    1000ms
    内存
    256MiB
    难度
    10
    标签
    递交数
    2
    已通过
    2
    上传者