#include<stdio.h>
#include<stdlib.h>
char c[10][10],d[10][10],a[10][10],b[10][10];
int n;
bool pd(){
int i,j;
bool b=true;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
if(a[i][j]!=d[i][j])
b=false;
return b;
}
bool work1(){
int i,j;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
d[j][i]=c[n-i-1][j];
return pd();
}
bool work2(){
int i,j;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
d[i][j]=c[n-i-1][n-j-1];
return pd();
}
bool work3(){
int i,j;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
d[j][i]=c[i][n-j-1];
return pd();
}
bool work4(){
int i,j;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
d[i][j]=c[i][n-j-1];
return pd();
}
bool work5(){
int i,j;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
b[i][j]=c[i][n-j-1];
for(i=0;i<n;i++)
for(j=0;j<n;j++)
d[j][i]=b[n-i-1][j];
return pd();
}
bool work7(){
int i,j;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
b[i][j]=c[i][n-j-1];
for(i=0;i<n;i++)
for(j=0;j<n;j++)
d[i][j]=b[n-i-1][n-j-1];
return pd();
}
bool work8(){
int i,j;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
b[i][j]=c[i][n-j-1];
for(i=0;i<n;i++)
for(j=0;j<n;j++)
d[j][i]=b[i][n-j-1];
return pd();
}
bool work6(){
int i,j;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
d[i][j]=c[i][j];
return pd();
}
void work(){
if(work1()) puts("1");
else if(work2()) puts("2");
else if(work3()) puts("3");
else if(work4()) puts("4");
else if(work5()) puts("5");
else if(work7()) puts("5");
else if(work8()) puts("5");
else if(work6()) puts("6");
else puts("7");
return ;
}
int main(){
int i,j,k,m;
freopen("transform.in","r",stdin);
freopen("transform.out","w",stdout);
scanf("%d",&n);
scanf("%*c");
for(i=0;i<n;i++)
gets(c[i]);
for(i=0;i<n;i++)
gets(a[i]);
work();
return 0;
}
usaco transform
最新推荐文章于 2018-10-01 14:12:04 发布