记录编号 |
109593 |
评测结果 |
AAAAAAA |
题目名称 |
方块转换 |
最终得分 |
100 |
用户昵称 |
slyrabbit |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.002 s |
提交时间 |
2014-07-09 09:17:30 |
内存使用 |
0.31 MiB |
显示代码纯文本
#include<iostream>
#include<cstdio>
using namespace std;
char f[15][15],l[15][15];
int n;
bool t=false;
void check1()
{
if(t==true)
return;
for(int i=0,jl=n-1;i<n,jl>=0;i++,jl--)
{
for(int jf=0,il=0;jf<n,il<n;jf++,il++)
{
if(f[i][jf]!=l[il][jl])
{
return;
}
}
}
t=true;
}
void check2()
{
if(t==true)
return;
for(int i=0,il=n-1;i<n,il>=0;i++,il--)
{
for(int jf=0,jl=n-1;jf<n,jl>=0;jf++,jl--)
{
if(f[i][jf]!=l[il][jl])
return;
}
}
t=true;
}
void check3()
{
if(t==true)
return;
for(int i=0,jl=0;i<n,jl<n;i++,jl++)
{
for(int jf=0,il=n-1;jf<n,il>=0;jf++,il--)
{
if(f[i][jf]!=l[il][jl])
return;
}
}
t=true;
}
void check4()
{
if(t==true)
return;
for(int i=0;i<n;i++)
{
for(int j=0,jl=n-1;j<n,jl>=0;j++,jl--)
{
if(f[i][j]!=l[i][jl])
return;
}
}
t=true;
}
void check5()
{
if(t==true)
return;
char temp;
for(int i=0;i<n;i++)
{
for(int j=0;j<n/2;j++)
{
temp=l[i][j];
l[i][j]=l[i][n-j-1];
l[i][n-j-1]=temp;
}
}
check1();
check2();
check3();
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
temp=l[i][j];
l[i][j]=l[i][n-j-1];
l[i][n-j-1]=temp;
}
}
}
void check6()
{
if(t==true)
return;
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
if(f[i][j]!=l[i][j])
return;
}
}
t=true;
}
int main()
{
freopen("transformations.in","r",stdin);
freopen("transformations.out","w",stdout);
cin>>n;
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
cin>>f[i][j];//i指行序号,j指列序号
}
}
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
cin>>l[i][j];
}
}
if(t==false){
check1();if(t==true)cout<<1;
}
if(t==false){
check2();if(t==true)cout<<2;
}
if(t==false){
check3();if(t==true)cout<<3;
}
if(t==false){
check4();if(t==true)cout<<4;
}
if(t==false){
check5();if(t==true)cout<<5;
}
if(t==false){
check6();if(t==true)cout<<6;
}
if(t==false)
cout<<7;
return 0;
}