别看代码长,其实结构都差不多
#include<stdio.h>
int n,re;
char a[15][15],b[15][15],c[15][15],d[15][15];
int main()
{
int i,j;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
scanf("%c",&a[i][j]);
scanf("\n");
}
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
scanf("%c",&c[i][j]);
scanf("\n");
}
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
b[i][n-j+1]=a[i][j];
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(a[i][j]!=c[i][j])
{
re=0;
break;
}
else
re=6;
if(re!=6)
{
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(b[i][j]!=c[i][j])
{
re=0;
break;
}
else
re=4;
}
if(re!=6&&re!=4)
{
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
d[j][n-i+1]=b[i][j];
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(d[i][j]!=c[i][j])
{
re=0;
break;
}
else
re=5;
}
if(re!=6&&re!=4&&re!=5)
{
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
d[n-i+1][n-j+1]=b[i][j];
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(d[i][j]!=c[i][j])
{
re=0;
break;
}
else
re=5;
}
if(re!=6&&re!=4&&re!=5)
{
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
d[n-j+1][i]=a[i][j];
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(d[i][j]!=c[i][j])
{
re=0;
break;
}
else
re=5;
}
if(re!=6&&re!=4&&re!=5)
{
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
b[j][n-i+1]=a[i][j];
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(b[i][j]!=c[i][j])
{
re=0;
break;
}
else
re=1;
}
if(re!=6&&re!=4&&re!=5&&re!=1)
{
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
b[n-i+1][n-j+1]=a[i][j];
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(b[i][j]!=c[i][j])
{
re=0;
break;
}
else
re=2;
}
if(re!=6&&re!=4&&re!=5&&re!=1&&re!=2)
{
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
b[n-j+1][i]=a[i][j];
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
if(b[i][j]!=c[i][j])
{
re=0;
break;
}
else
re=3;
}
printf("%d",re);
return 0;
}