Manthan, Codefest 19 (open for everyone, rated, Div. 1 + Div. 2)-C. Magic Grid-构造

Posted --simon

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Manthan, Codefest 19 (open for everyone, rated, Div. 1 + Div. 2)-C. Magic Grid-构造相关的知识,希望对你有一定的参考价值。

Manthan, Codefest 19 (open for everyone, rated, Div. 1 + Div. 2)-C. Magic Grid-构造

技术图片


【Problem Description】

? 给你一个\\(n\\),构造一个\\(n\\times n\\)的矩阵,使其满足任意一行,或一列的异或值相同。保证\\(n\\)能被\\(4\\)整除。

【Solution】

? 可以发现,从\\(0\\)开始,每\\(4\\)个连续数的异或值为\\(0\\),所以可以很容易使得每一行的异或值等于\\(0\\)

? 列向可以发现,从\\(0\\)开始,公差为\\(4\\)的,每\\(4\\)个数的异或值也为\\(0\\)。即\\(0\\oplus4\\oplus8\\oplus12=0\\)。所以满足条件的矩阵形如:
\\[ \\left[\\beginmatrix 0&1&2&3&32&33&34&35&\\4&5&6&7&36&37&38&39&\\8&9&10&11&40&41&42&43&\\12&13&14&15&44&45&46&47&\\16&17&18&19&48&49&50&51&\\20&21&22&23&52&53&54&55&\\24&25&26&27&56&57&58&59&\\28&29&30&31&60&61&62&63&\\\\endmatrix\\right] \\]


【Code】

/*
 * @Author: Simon 
 * @Date: 2019-08-26 18:38:05 
 * @Last Modified by: Simon
 * @Last Modified time: 2019-08-26 19:02:53
 */
#include<bits/stdc++.h>
using namespace std;
typedef int Int;
#define int long long
#define INF 0x3f3f3f3f
#define maxn 2005
int a[maxn][maxn];
Int main()
#ifndef ONLINE_JUDGE
    //freopen("input.in","r",stdin);
    //freopen("output.out","w",stdout);
#endif
    ios::sync_with_stdio(false);
    cin.tie(0);
    int n;cin>>n;
    for(int i=0;i<n;i++) a[0][i]=i/4*n*4+i%4;
    for(int i=1;i<n;i++)
        for(int j=0;j<n;j++)
            a[i][j]=a[i-1][j]+4;
        
    
    for(int i=0;i<n;i++)
        for(int j=0;j<n;j++)
            cout<<a[i][j]<<' ';
        
        cout<<endl;
    
#ifndef ONLINE_JUDGE
    system("pause");
#endif
    return 0;

以上是关于Manthan, Codefest 19 (open for everyone, rated, Div. 1 + Div. 2)-C. Magic Grid-构造的主要内容,如果未能解决你的问题,请参考以下文章

Manthan Codefest 19 题解

Manthan, Codefest 19 (open for everyone, rated, Div. 1 + Div. 2)-C. Magic Grid-构造

Manthan, Codefest 19 (open for everyone, rated, Div. 1 + Div. 2) C. Magic Grid

Manthan, Codefest 19 (open for everyone, rated, Div. 1 + Div. 2)B(SET)

Manthan, Codefest 19 (open for everyone, rated, Div. 1 + Div. 2) (1208F,1208G,1208H)

Manthan, Codefest 18 (rated, Div. 1 + Div. 2)