输入两个N*N的矩阵a,b,将b 分别旋转0,90, 180, 270度得到4个矩阵b‘
求a 与 b‘ 的总重合元素个数
暴力直接搞, 唯一的难点, 恐怕就是读题了。。。
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const double inf = 1e9;
const double eps = 1e-7;
const int maxn = 111111;
int book[maxn];
int main(){
int mat1[33][33], mat2[33][33];
int n,i,j;
int ans, sum;
while(cin>>n && n){
for(i=0; i<n; i++)
for(j=0; j<n; j++)
cin>>mat1[i][j];
for(i=0; i<n; i++)
for(j=0; j<n; j++)
cin>>mat2[i][j];
ans = 0;
sum = 0;
for(i=0; i<n; i++)
for(j=0; j<n; j++)
if(mat1[i][j] == mat2[i][j])
sum++;
ans = max(ans, sum);
sum = 0;
for(i=0; i<n; i++)
for(j=0; j<n; j++)
if(mat1[i][j] == mat2[n-j-1][i])
sum++;
ans = max(ans, sum);
sum = 0;
for(i=0; i<n; i++)
for(j=0; j<n; j++)
if(mat1[i][j] == mat2[n-1-i][n-1-j])
sum++;
ans = max(ans, sum);
sum = 0;
for(i=0; i<n; i++)
for(j=0; j<n; j++)
if(mat1[i][j] == mat2[j][n-1-i])
sum++;
ans = max(ans, sum);
cout<<ans<<endl;
}
}