求助
查看原帖
求助
47328
Eat_A_HuTao楼主2020/5/1 23:38
#include <bits/stdc++.h>
using namespace std;
int n;
char a[15][15],b[15][15],c[15][15],d[15][15];
int same()
{
	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 again1()
{
	for(int i=1;i<=n;i++)
		for(int j=1;j<=n;j++)
			a[i][j]=b[i][j];
}
int work1()
{
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=n;j++)
		{
			b[j][n-i+1]=a[i][j];
		}
	}
	return same();
}
int work2()
{
	work1();
	again1();
	work1();
	return same();
}
int work3()
{
	work1();
	again1();
	work2();
	return same();
}
int work4()
{
	for(int i=1;i<=n;i++)
		for(int j=1;j<=n;j++)
			b[i][n-j+1]=a[i][j];
	return same();
}
int work5()
{
	work4();
	again1();
	if(work1())
		return 1;
	again1();
	if(work2())
		return 1;
	again1();
	if(work3())
		return 1;
	return 0;
}
int work6()
{
	return same();
}
int main()
{
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=n;j++)
		{
			cin>>a[i][j];
			d[i][j]=a[i][j];
		}
	}
	for(int i=1;i<=n;i++)
		for(int j=1;j<=n;j++)
			cin>>c[i][j];
	if(work1())
	{
		cout<<"1";
		return 0;
	}
	if(work2())
	{
		cout<<"2";
		return 0;
	}
	if(work3())
	{
		cout<<"3";
		return 0;
	}
	if(work4())
	{
		cout<<"4";
		return 0;
	}
	if(work5())
	{
		cout<<"5";
		return 0;
	}
	if(work6())
	{
		cout<<"6";
		return 0;
	}
	cout<<"7";
}
2020/5/1 23:38
加载中...