欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

矩阵相似

程序员文章站 2022-07-12 09:29:15
...

原题链接:https://begin.lydsy.com/JudgeOnline/problem.php?cid=1258&pid=3
矩阵相似

题目如上,一开始觉得很难,做不出来,想用2个矩阵做,结果半天无果。最后利用一定的规律想出来了。
最后还是上网查了一下,借助大佬的思想,做了出来。废话不多说,上代码。

#include <bits/stdc++.h>
using namespace std;
int n,a,b,c,d;
int AB[21][21];

int main()
{
    scanf("%d",&n);
    for (int i=1;i<=2*n;i++)
    for (int j=1;j<=n;j++)
    scanf("%d",&AB[i][j]);
    for (int i=1;i<=n;i++)
    for (int j=1;j<=n;j++)
    {
        if (AB[i][j]==AB[n+i][j]) a++;
        if (AB[i][j]==AB[n+j][n-i+1]) b++;
        if (AB[i][j]==AB[2*n-i+1][n-j+1]) c++;
        if (AB[i][j]==AB[2*n-j+1][i]) d++;
    }
    if (a==n*n) printf("0");
    else if (b==n*n) printf("1");
    else if (c==n*n) printf("2");
    else if (d==n*n) printf("3");
    else printf("-1");
    return 0;
}
相关标签: c++

上一篇: 插值查找算法

下一篇: 入门OJ