#include<stdio.h>
#include<string.h>
int n;
char a[15][15],b[15][15],c[15][15],d[15][15];
int ope1()
{
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
c[j][n-i+1]=a[i][j];
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
if(c[i][j]!=b[i][j]) return 0;
}
return 1;
}
int ope2()
{
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
c[n-i+1][n-j+1]=a[i][j];
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
if(c[i][j]!=b[i][j]) return 0;
}
return 1;
}
int ope3()
{
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
c[n-j+1][i]=a[i][j];
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
if(c[i][j]!=b[i][j]) return 0;
}
return 1;
}
int ope4()
{
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
c[i][n-j+1]=a[i][j];
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
if(c[i][j]!=b[i][j]) return 0;
}
return 1;
}
int ope5()
{
ope4();
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
a[i][j]=c[i][j];
}
if(ope1()) return 1;
if(ope2()) return 1;
if(ope3()) return 1;
}
int ope6()
{
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
if(d[i][j]!=b[i][j]) return 0;
}
return 1;
}
int ope7()
{
return 1;
}
int main()
{
int i,j;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%s",&a[i]);
}
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
d[i][j]=a[i][j];
}
for(i=1;i<=n;i++)
{
scanf("%s",&b[i]);
}
if(ope1())
{
printf("1");
return 0;
}
if(ope2())
{
printf("2");
return 0;
}
if(ope3())
{
printf("3");
return 0;
}
if(ope4())
{
printf("4");
return 0;
}
if(ope5())
{
printf("5");
return 0;
}
if(ope6())
{
printf("6");
return 0;
}
if(ope7())
{
printf("7");
return 0;
}
}
只通过了测试点1和7,实在不知道哪里错了