样例没过,但AC了?求hack
查看原帖
样例没过,但AC了?求hack
1243618
Jokersheng楼主2024/8/6 23:01
#include<bits/stdc++.h>
using namespace std;

const int N = 15;

char a[N][N],b[N][N],c[N][N],d[N][N];

int n;

bool qd(){
	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;
}

void t1(){
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			c[n-j+1][i]=a[i][j];
		}
	}
}

void t2(){
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			c[n-i+1][n-j+1]=a[i][j];
		}
	}
}

void t3(){
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			c[j][n-i+1]=a[i][j];
		}
	}
}

void t4(){
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			c[i][n-j+1]=a[i][j];
		}
	}
}

void t5t1(){
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			d[i][n-j+1]=a[i][j];
		}
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			c[n-j+1][i]=d[i][j];
		}
	}
}

void t5t2(){
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			d[i][n-j+1]=a[i][j];
		}
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			c[n-i+1][n-j+1]=d[i][j];
		}
	}
}

void t5t3(){
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			d[i][n-j+1]=a[i][j];
		}
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			c[j][n-i+1]=d[i][j];
		}
	}
}

void t6(){
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			c[i][j]=a[i][j];
		}
	}
}

int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			cin>>a[i][j];
		}
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			cin>>b[i][j];
		}
	}
	t1();
	if(qd()){
		cout<<1;
		return 0;
	}
	t2();
	if(qd()){
		cout<<2;
		return 0;
	}
	t3();
	if(qd()){
		cout<<3;
		return 0;
	}
	t4();
	if(qd()){
		cout<<4;
		return 0;
	}
	t5t1();
	if(qd()){
		cout<<5;
		return 0;
	}
	t5t2();
	if(qd()){
		cout<<5;
		return 0;
	}
	t5t3();
	if(qd()){
		cout<<5;
		return 0;
	}
	t6();
	if(qd()){
		cout<<6;
		return 0;
	}
	cout<<7;
	return 0; 
} 
2024/8/6 23:01
加载中...