55分求助
查看原帖
55分求助
1338197
wangyanxi楼主2024/9/13 11:56
#include <iostream>
#include <algorithm>
#include <iomanip>
using namespace std;
const int MAXN = 10;
bool a[MAXN][MAXN];

bool check_row(){
    for (int i = 1;i <= 5;i++){
        bool flag = true;
        for (int j = 1;j <= 5;j++){
            if (!a[i][j]){
                flag = false;
            }
        }
        if (flag){
            return true;
        }
    }
    return false;
}

bool check_cloumn(){
    for (int j = 1;j <= 5;j++){
        bool flag = true;
        for (int i = 1;i <= 5;i++){
            if (!a[i][j]){
                flag = false;
            }
        }
        if (flag){
            return true;
        }
    }
    return false;
}

bool check_diagonal(){
    bool f1 = true, f2 = true;
    for (int i = 1;i <= 5;i++){
        bool flag = true;
        for (int j = 1;j <= 5;j++){
            if (i == j){
                if (!a[i][j]){
                    f1 = false;
                }
            }
        }
    }
    for (int i = 1;i <= 5;i++){
        for (int j = 1;j <= 5;j++){
            if (i + j == 6){
                if (!a[i][j]){
                    f2 = false;
                }
            }
        }
    }
    return f1 || f2;
}

int main(){
    for (int i = 1;i <= 5;i++){
        for (int j = 1;j <= 5;j++){
            scanf("%s", &a[i][j]);
        }
    }
    if (check_row() || check_cloumn() || check_diagonal()){
        cout << "Yes" << endl;
    }else{
        cout << "No" << endl;
    }
    return 0;
}
2024/9/13 11:56
加载中...