#include
using namespace std;
int main()
{
int N, i, j, one = 1, two = 1, three = 1, four = 1;
char a[10][10], b[10][10];
cin >> N;
for (i = 0; i < N; i++)
for (j = 0; j < N; j++)
cin >> a[i][j];
for (i = 0; i < N; i++)
for (j = 0; j < N; j++)
cin >> b[i][j];
for (i = 0; i < N; i++)
for (j = 0; j < N; j++)
if (a[i][j] != b[j][N - 1 - i])
one++;/设立一个one作为标识值
如果检测到不符合这种旋转规则的情况
就改变标识值/
for (i=0;i<N;i++)
for (j=0;j<N;j++)
if (b[i][j] != a[j][N - 1 - i])
two = 0;
for (i = 0; i < N; i++)
for (j = 0; j < N; j++)
if (a[i][j] != b[N - 1 - i][N - 1 - j])
three = 0;
for (i = 0; i < N; i++)
for (j = 0; j < N; j++)
if (a[i][j] != b[i][j])
four = 0;
if (one == 1 && two != 1 && three != 1 && four != 1)
cout << 1;/这些分支是根据四个标识值的总体情况决定输出结果
标识值的作用显而易见
通过标识值组合
可以衍生出第五种情况/
if (two == 1 && one != 1 && three != 1 && four != 1)
cout << 2;
if (three == 1 && one != 1 && two != 1 && four != 1)
cout << 3;
if (four == 1 && one != 1 && two != 1 && three != 1)
cout << 4;
if (one != 1 && two != 1 && three != 1 && four != 1)
cout << 5;
return 0;
}