1 条题解
-
0凌艺樽 (Lawrence劳伦斯) LV 10 @ 2024-6-9 20:00:32
#include <bits/stdc++.h> using namespace std; const int N=30; int n; char a[N][N],b[N][N],c1[N][N],c2[N][N],c3[N][N],c54[N][N]; char c4[N][N],c5[N][N],c6[N][N],c52[N][N],c53[N][N]; bool d5=0; void f1() { for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { c1[i][j]=a[j][n-1-i]; } } } void f2() { for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { c2[i][j]=c1[j][n-1-i]; } } } void f3() { for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { c3[i][j]=c2[j][n-1-i]; } } } void f4() { for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { c4[i][n-j-1]=a[i][j]; } } } void f5() { for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { c5[i][j]=c4[i][j]; } } for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { c52[i][j]=c5[j][n-1-i]; } } bool f=1; for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { if(c52[i][j]!=b[i][j]) f=0; } } if(f) { cout<<5; d5=1; return; } for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { c53[i][j]=c52[j][n-1-i]; } } f=1; for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { if(c53[i][j]!=b[i][j]) f=0; } } if(f) { d5=1; cout<<5; return; } for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { c54[i][j]=c53[j][n-1-i]; } } f=1; for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { if(c54[i][j]!=b[i][j]) f=0; } } if(f) { d5=1; cout<<5; return; } // for(int i=0;i<n;i++) // { // for(int j=0;j<n;j++) // { // c5[i][j]=c54[i][j]; // } // } // bool f=1; // for(int i=0;i<n;i++) // { // for(int j=0;j<n;j++) // { // if(c5[i][j]!=b[i][j]) // f=0; // } // } // if(f) // { // d5=1; // cout<<5; // return; // } } 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]; } } f1(); for(int i=1;i<=6;i++) { if(i==1) { f1(); bool f=1; for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { if(c1[i][j]!=b[i][j]) f=0; } } if(f) { cout<<1; return 0; } } if(i==2) { f2(); bool f=1; for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { if(c2[i][j]!=b[i][j]) f=0; } } if(f) { cout<<2; return 0; } } if(i==3) { f3(); bool f=1; for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { if(c3[i][j]!=b[i][j]) f=0; } } if(f) { cout<<3; return 0; } } if(i==4) { f4(); bool f=1; for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { if(c4[i][j]!=b[i][j]) f=0; } } if(f) { cout<<4; return 0; } } if(i==5) { f5(); if(d5==1)return 0; } if(i==6) { bool f=1; for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { if(a[i][j]!=b[i][j]) f=0; } } if(f) { cout<<6; return 0; } } } cout<<7; return 0; }
- 1
信息
- ID
- 549
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- 递交数
- 3
- 已通过
- 3
- 上传者