请求支援!错6个点
查看原帖
请求支援!错6个点
508288
29SNyyds楼主2022/1/3 21:25
#include <bits/stdc++.h>
using namespace std;
int n,s[11][11],s2[11][11],s3[11][11],s4[11][11];
bool q3 () {
            for (int i=1;i<=n;i++) {
                for (int j=1;j<=n;j++) {
                s3[n+1-j][i]=s[i][j];
                }
            }
            for (int i=1;i<=n;i++) 
            	for (int j=1;j<=n;j++) 
            		if (s3[i][j]!=s2[i][j]) return 0;
            return 1;
}
bool q2 () {
            for (int i=1;i<=n;i++) {
                for (int j=1;j<=n;j++) {
                s3[n+1-i][n+1-j]=s[i][j];
               }
            }
            for (int i=1;i<=n;i++) 
            	for (int j=1;j<=n;j++) 
            		if (s3[i][j]!=s2[i][j]) return 0;
            return 1;
}
bool q1 () {
            for (int i=1;i<=n;i++) {
                for (int j=1;j<=n;j++) {
                s3[j][n+1-i]=s[i][j];
                }
            }
            for (int i=1;i<=n;i++) 
            	for (int j=1;j<=n;j++) 
            		if (s3[i][j]!=s2[i][j]) return 0;
            return 1;
}
bool q4 () {
            for (int i=1;i<=n;i++) {
                for (int j=1;j<=n;j++) {
                s3[i][n+1-j]=s[i][j];
                }
            }
            for (int i=1;i<=n;i++) 
            	for (int j=1;j<=n;j++) 
            		if (s3[i][j]!=s2[i][j]) return 0;
            return 1;
}
bool q5 ()     {
	q4();
	for(int i=1;i<=n;i++)
     for(int j=1;j<=n;j++)
      s[i][j]=s4[i][j];  
      if(q1())
      return 1;
    for(int i=1;i<=n;i++)
     for(int j=1;j<=n;j++)
      s[i][j]=s4[i][j]; 
      if(q2())
      return 1;
    for(int i=1;i<=n;i++)
     for(int j=1;j<=n;j++)
      s[i][j]=s4[i][j]; 
      if(q3())
      return 1;
      return 0;
}
bool q6 (){
    for(int i=1;i<=n;i++)
      for(int j=1;j<=n;j++)
     if(s3[i][j]!=s2[i][j])
     return 0;
     return 1;
}
void do1 (){
	 if (q1()) {
	 	cout<<1;
	 	return;
	 }
	 if (q2()) {
	 	cout<<2;
	 	return;
	 }
	 if (q3()) {
	 	cout<<3;
	 	return;
	 }
	 if (q4()) {
	 	cout<<4;
	 	return;
	 }
	 if (q5()) {
	 	cout<<5;
	 	return;
	 }
	 if (q6()) {
	 	cout<<6;
	 	return;
	 }
	 cout<<7;
}
int main () {
	cin>>n;
	for (int i=1;i<=n;i++) {
		for (int j=1;j<=n;j++) {
		cin>>s[i][j];
		s4[i][j]=s[i][j];
	}
}
	for (int i=1;i<=n;i++) 
		for (int j=1;j<=n;j++) 
			cin>>s2[i][j];
	do1();
	return 0;
} 

永远都输出1!!

大佬们帮帮我!!

2022/1/3 21:25
加载中...