• Codeforces Round #546 (Div. 2) C. Nastya Is Transposing Matrices


    链接:https://codeforces.com/contest/1136/problem/C

    题意:

    给两个矩阵,求能否通过矩阵转置从第一个矩阵变成第二个矩阵。

    转置即i变成j。

    思路:

    因为无论怎么转,只要对角线上的各个值没有改变,即可以。

    比赛的时候没想完全,一直把值加起来。。。

    代码:

    #include <bits/stdc++.h>
    
    using namespace std;
    
    typedef long long LL;
    
    const int MAXN = 500 + 10;
    
    int a[MAXN][MAXN];
    int b[MAXN][MAXN];
    map<int, int> times[2 * MAXN];
    int main()
    {
        int n, m;
        int flag = 1;
        scanf("%d%d", &n, &m);
        for (int i = 1;i <= n;i++)
        {
            for (int j = 1; j <= m; j++)
            {
                scanf("%d", &a[i][j]);
                times[i + j - 1][a[i][j]]++;
            }
        }
        for (int i = 1;i <= n;i++)
        {
            for (int j = 1; j <= m; j++)
            {
                scanf("%d", &b[i][j]);
                if (times[i + j - 1][b[i][j]] <= 0)
                    flag = 0;
                times[i + j - 1][b[i][j]]--;
            }
        }
        if (flag)
            printf("YES
    ");
        else
            printf("NO
    ");
    
        return 0;
    }
    

      

  • 相关阅读:
    EnumMap实现类
    java enum
    openssl生成RSA公钥和私钥对
    rsa 公钥 私钥
    eclispe 通过git向码云上传
    eclipse git 报 git: 401 Unauthorized
    HttpClient 超时时间
    HttpClient 4 和 HttpClient 3 超时
    Java RSA 生成公钥 私钥
    万能适配器
  • 原文地址:https://www.cnblogs.com/YDDDD/p/10516010.html
Copyright © 2020-2023  润新知