#28059: NA40% QQ


d10831523@gapps.fg.tp.edu.tw (廖與僑)

學校 : 臺北市立第一女子高級中學
編號 : 107948
來源 : [211.75.180.175]
最後登入時間 :
2022-10-03 21:31:01
b575. 似曾相識 -- 104學年度板橋高中校內資訊學科能力競賽(五) | From: [203.64.52.40] | 發表日期 : 2021-11-12 13:08

#include<bits/stdc++.h>

using namespace std;

 

int a[20][20],b[20][20],n;

 

bool v0(int n){

for(int i=0;i<n;i++)for(int j=0;j<n;j++){

if(a[i][j]!=b[i][j])return false;

}

return true;

}

bool v1(int n){

for(int i=0;i<n;i++)for(int j=0;j<n;j++){

if(a[i][j]!=b[j][n-1-i])return false;

}

return true;

}

bool v2(int n){

for(int i=0;i<n;i++)for(int j=0;j<n;j++){

if(a[i][j]!=b[n-1-i][n-1-j])return false;

}

return true;

}

bool v3(int n){

for(int i=0;i<n;i++)for(int j=0;j<n;j++){

if(a[i][j]!=b[n-1-j][i])return false;

}

return true;

}

bool v(int n){

if(v0(n))return true;

if(v1(n))return true;

if(v2(n))return true;

if(v3(n))return true;

return false;

}

 

int main(){

//ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);

int k;

while(cin>>n>>k){

for(int i=0;i<n;i++){

int t;cin>>t;

for(int j=0;j<n;j++)a[i][j]=t%10,t/=10;

}

int s=0;

while(k--){

for(int i=0;i<n;i++){

int t;cin>>t;

for(int j=0;j<n;j++)b[i][j]=t%10,t/=10;

}

if(v(n))s++;

}

cout<<s<<"\n";

return 0;

}

/*

i,j

j,n-1-i

n-1-i,n-1-j

n-1-j,i

*/

 
#28060: Re:NA40% QQ


cges30901 (cges30901)

學校 : 不指定學校
編號 : 30877
來源 : [101.136.203.77]
最後登入時間 :
2024-04-07 15:34:14
b575. 似曾相識 -- 104學年度板橋高中校內資訊學科能力競賽(五) | From: [27.51.64.28] | 發表日期 : 2021-11-12 15:46

#include<bits/stdc++.h>

using namespace std;

 

int a[20][20],b[20][20],n;

 

bool v0(int n){

for(int i=0;i<n;i++)for(int j=0;j<n;j++){

if(a[i][j]!=b[i][j])return false;

}

return true;

}

bool v1(int n){

for(int i=0;i<n;i++)for(int j=0;j<n;j++){

if(a[i][j]!=b[j][n-1-i])return false;

}

return true;

}

bool v2(int n){

for(int i=0;i<n;i++)for(int j=0;j<n;j++){

if(a[i][j]!=b[n-1-i][n-1-j])return false;

}

return true;

}

bool v3(int n){

for(int i=0;i<n;i++)for(int j=0;j<n;j++){

if(a[i][j]!=b[n-1-j][i])return false;

}

return true;

}

bool v(int n){

if(v0(n))return true;

if(v1(n))return true;

if(v2(n))return true;

if(v3(n))return true;

return false;

}

 

int main(){

//ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);

int k;

while(cin>>n>>k){

for(int i=0;i<n;i++){

int t;cin>>t;

for(int j=0;j<n;j++)a[i][j]=t%10,t/=10;

}

int s=0;

while(k--){

for(int i=0;i<n;i++){

int t;cin>>t;

for(int j=0;j<n;j++)b[i][j]=t%10,t/=10;

}

if(v(n))s++;

}

cout<<s<<"\n";

return 0;

}

/*

i,j

j,n-1-i

n-1-i,n-1-j

n-1-j,i

*/


如果n很大,int t應該裝不下?

 
ZeroJudge Forum