#include<iostream>
#include<algorithm>
#include<cmath>
#include<cstring>
using namespace std;
char pl[40][40], cl[40][40], pc[40][40];
int n;
bool check() {
if (pl==pc) {
return 1;
}
return 0;
}
void n1() {
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
pl[j][i] = cl[n - 1 - j][n - 1 - i];
}
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
char n = pl[j][i];
pl[j][i] = cl[j][i];
cl[j][i] = n;
}
}
cout<<endl;
}
void fan() {
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
pl[j][i] = cl[n - 1 - j][i];
}
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
char n = pl[j][i];
pl[j][i] = cl[j][i];
cl[j][i] = n;
}
}
}
int main() {
cin >> n;
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
cin >> pl[j][i];
}
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
cin >> pc[j][i];
}
}
if (check()) {
cout << "6" << endl;
return 0;
}
n1();
if (check()) {
cout << "1" << endl;
return 0;
}
n1();
if (check()) {
cout << "2" << endl;
return 0;
}
n1();
if (check()) {
cout << "3" << endl;
return 0;
}
n1();
fan();
if (check()) {
cout << "4" << endl;
return 0;
}
n1();
if (check()) {
cout << "5" << endl;
return 0;
}
n1();
if (check()) {
cout << "5" << endl;
return 0;
}
n1();
if (check()) {
cout << "5" << endl;
return 0;
}
cout << "7" << endl;
return 0;
}
感觉代码思路上没有任何问题,但输出永远是7,请大佬帮忙看看是怎么回事。。