提交时间:2024-01-23 14:21:36

运行 ID: 124404

#include <bits/stdc++.h> #define int long long using namespace std; int n; char a[15][15]; char b[15][15]; char c[15][15]; void Right_Rotate() { for (int i = 1; i <= n; i++) for (int j = 1; j <= n; j++) c[i][j] = a[i][j]; for (int i = 1; i <= n; i++) for (int j = 1; j <= n; j++) a[j][n - i + 1] = c[i][j]; } void Reverse() { for (int i = 1; i <= n; i++) for (int j = 1; j <= n; j++) c[i][j] = a[i][j]; for (int i = 1; i <= n; i++) for (int j = 1; j <= n; j++) a[i][n - j + 1] = c[i][j]; } bool Check() { for (int i = 1; i <= n; i++) for (int j = 1; j <= n; j++) if (a[i][j] != b[i][j]) return false; return true; } signed main() { cin >> n; for (int i = 1; i <= n; i++) for (int j = 1; j <= n; j++) cin >> a[i][j]; for (int i = 1; i <= n; i++) for (int j = 1; j <= n; j++) cin >> b[i][j]; Right_Rotate(); if (Check()) { puts("1"); return 0; } Right_Rotate(); if (Check()) { puts("2"); return 0; } Right_Rotate(); if (Check()) { puts("3"); return 0; } Right_Rotate(); if (Check()) { puts("6"); return 0; } Reverse(); if (Check()) { puts("4"); return 0; } Right_Rotate(); if (Check()) { puts("5"); return 0; } Right_Rotate(); if (Check()) { puts("5"); return 0; } Right_Rotate(); if (Check()) { puts("5"); return 0; } puts("7"); return 0; }