第六个点没过啊,感觉反转没问题啊
查看原帖
第六个点没过啊,感觉反转没问题啊
704679
mrHCT楼主2023/1/16 23:34
#include<iostream>
using namespace std;
char a[15][15];
char b[15][15];
char c[15][15];
int flag=0;
int t=0;
int t1;
int n;
int f1()
{
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		{
			c[i][j]=a[n-1-j][i];
		}
	}	
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		{
			if(b[i][j]!=c[i][j])flag=1;
		}
	}
	if(flag==0)return 1;	
}

int f2()
{
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		{
			c[i][j]=a[n-1-i][n-1-j];
		}
	}	
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		{
			if(b[i][j]!=c[i][j])flag=1;
		}
	}
	if(flag==0)return 2;
	else return 0;	
}

int f3()
{
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		{
			c[i][j]=a[j][n-1-i];
		}
	}	
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		{
			if(b[i][j]!=c[i][j])flag=1;
		}
	}
	if(flag==0)return 3;
	else return 0;	
}


int f4()
{
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		{
			c[i][j]=a[i][n-1-j];
		}
	}	
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		{
			a[i][j]=c[i][j];
		}
	}	
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		{
			if(b[i][j]!=c[i][j])flag=1;
		}
	}
	if(flag==0)return 4;
	else return 0;	
}



int f6()
{
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		{
			if(b[i][j]!=c[i][j])flag=1;
		}
	}	

	if(flag==0)return 6;
		
}

int main()
{
	cin>>n;
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		{
			cin>>a[i][j];
		}
	}
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		{
			cin>>b[i][j];
		}
	}
	for(int i=0;i<7;i++)
	{
	f6();
	if(flag==0){cout<<f6()<<endl;break;}
	flag=0;
	f1();
	if(flag==0){cout<<f1()<<endl;break;}
	flag=0;
	f2();
	if(flag==0){cout<<f2()<<endl;break;}
	flag=0;
	f3();
	if(flag==0){cout<<f3()<<endl;break;}
	flag=0;
	f4();
	if(flag==0){cout<<f4()<<endl;break;}
	flag=0;
	f1();
	if(flag==0){cout<<5<<endl;break;}
	flag=0;
	f2();
	if(flag==0){cout<<5<<endl;break;}
	flag=0;
	f3();
	if(flag==0){cout<<5<<endl;break;}
	else {cout<<7<<endl;break;}
}
	return 0;
}
2023/1/16 23:34
加载中...