Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
9236 A班-许锘林 古墓旋转石门之谜 C++ 通过 100 1 MS 260 KB 1483 2025-04-09 20:55:53

Tests(12/12):


#include <bits/stdc++.h> using namespace std; int main() { int N; cin>>N; for(int i = 0;i < N;i++) { int n; cin>>n; int a[n][n]; int b[n][n]; int c[n][n] = {0}; int d[n][n] = {0}; int e[n][n] = {0}; for(int j = 0;j < n;j++) { for(int k = 0;k < n;k++) { cin>>a[j][k]; } } int flag = 1; for(int j = 0;j < n;j++) { for(int k = 0;k < n;k++) { cin>>b[j][k]; if(a[j][k] != b[j][k]) { flag = 0; } } } if(flag == 1) { cout<<"YES"<<endl; continue; } for(int j = 0;j < n;j++) { for(int k = n - 1,h = 0;k >= 0,h < n;k--,h++) { c[j][h] = a[k][j]; } } for(int j = 0;j < n;j++) { for(int k = n - 1,h = 0;k >= 0,h < n;k--,h++) { d[j][h] = c[k][j]; } } for(int j = 0;j < n;j++) { for(int k = n - 1,h = 0;k >= 0,h < n;k--,h++) { e[j][h] = d[k][j]; } } int flag1 = 0,flag2 = 0,flag3 = 0; for(int j = 0;j < n;j++) { for(int k = 0;k < n;k++) { if(b[j][k] != c[j][k]) { flag1 = 1; } if(b[j][k] != d[j][k]) { flag2 = 1; } if(b[j][k] != e[j][k]) { flag3 = 1; } } } if(!flag1 || !flag2 || !flag3) { cout<<"YES"<<endl; } else { cout<<"NO"<<endl; } } return 0; }


测评信息: