第二个测试点数据: 输入
5
-@@@-
-@@--
-@---
-----
-----
-----
----@
---@@
--@@@
-----
输出
5
我的问题和之前有人问过的不一样,在本地IDE测试就是7
代码:
#include<bits/stdc++.h>
using namespace std;
int n;
char sq1[15][15], sq2[15][15], sq3[15][15], sq4[15][15];
bool first() {
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
sq2[j][n-i+1] = sq1[i][j];
}
}
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
if (sq2[i][j] != sq3[i][j]) return 0;
}
}
return 1;
}
bool second() {
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
sq2[n-i+1][n-j+1] = sq1[i][j];
}
}
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
if (sq2[i][j] != sq3[i][j]) return 0;
}
}
return 1;
}
bool third() {
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
sq2[n-j+1][i] = sq1[i][j];
}
}
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
if (sq2[i][j] != sq3[i][j]) return 0;
}
}
return 1;
}
bool fourth() {
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
sq2[i][n-j+1] = sq1[i][j];
}
}
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
if (sq2[i][j] != sq3[i][j]) return 0;
}
}
return 1;
}
bool fifth() {
fourth();
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
sq1[i][j] = sq4[i][j];
}
}
if (first()) return 1;
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
sq1[i][j] = sq4[i][j];
}
}
if (second()) return 1;
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
sq1[i][j] = sq4[i][j];
}
}
if (third()) return 1;
return 0;
}
bool sixth() {
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
if (sq2[i][j] != sq3[i][j]) return 0;
}
}
return 1;
}
void work() {
if(first()) {
cout<<1;
return ;
}
if(second()) {
cout<<2;
return ;
}
if(third()) {
cout<<3;
return ;
}
if(fourth()) {
cout<<4;
return ;
}
if(fifth()) {
cout<<5;
return ;
}
if(sixth()) {
cout<<6;
return ;
}
cout<<7;
}
int main() {
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
cin >> sq1[i][j];
sq4[i][j] = sq1[i][j];
}
}
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= n; j++) {
cin >> sq3[i][j];
}
}
work();
return 0;
}
十分感谢你能够抽出时间帮助我