大佬们麻烦看看为什么,测试案例过了提交不对就不啊
查看原帖
大佬们麻烦看看为什么,测试案例过了提交不对就不啊
1224222
Lzm217693楼主2024/4/23 20:11
#include<iostream>
#include<string>
using namespace std;
char s1[11][11];
char s2[11][11];
char news[11][11];
int n;
bool work1() {
    int h = n;
    int l = 1;
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= n; j++) {
            news[i][j] = s1[h--][l];
        }
        h = n;
        l++;
    }
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= n; j++) {
            if (news[i][j] != s2[i][j]) {
                return false;
            }
        }
    }
    return true;
}
bool work2() {
    int h = n;
    int l = n;
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= n; j++) {
            news[i][j] = s1[h][l--];
        }
        h--;
        l=n;
    }
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= n; j++) {
            if (news[i][j] != s2[i][j]) {
                return false;
            }
        }
    }
    return true;
}
bool work3() {
    int h=1;
    int l=n;
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= n; j++) {
            news[j][i] = s1[h++][l];
        }
        h=1;
        l--;
    }
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= n; j++) {
            if (news[i][j] != s2[i][j]) {
                return false;
            }
        }
    }
    return true;
}
bool work4() {
    int h = n;
    for (int i = 1; i <=n; i++) {
        for (int j = 1; j <=n/2; j++) {
            news[i][j] = s1[i][h--];
        }
        h = n;
    }
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= n; j++) {
            if (news[i][j] != s2[i][j]) {
                return false;
            }
        }
    }
    return true;
}
bool work5() {
    int h = n;
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= n; j++) {
            news[i][j] = s1[i][h--];
        }
        h = n;
    }
    if (work1()) {
        return true;
    }
    else if (work2()) {
        return true;
    }
    else if (work3()) {
        return true;
    }
    return false;
}
bool work6() {
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= 3; j++) {
            if (s1[i][j] != s2[i][j]) {
                return false;
            }
        }
    }
    return true;
}
int main() {
    cin >> n;
    for (int i = 1; i<= n; i++) {
        for (int j = 1; j <= 3; j++) {
            cin >> s1[i][j];
            news[i][j] = s1[i][j];
        }
    }
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= 3; j++) {
            cin >> s2[i][j];
        }
    }
    if (work6()) {
        cout << 6;
    }
    else if (work1()) {
        cout << 1;
    }
    else if (work2()) {
        cout << 2;
    }
    else if (work3()) {
        cout << 3;
    }
    else if (work4()) {
        cout << 4;
    }
    else if (work5()) {
        cout << 5;
    }
    else {
        return 7;
    }
    return 0;
}
2024/4/23 20:11
加载中...