CF1208C
CF1208C
这场杜老师大战tourist的比赛怎么这么多人类智慧题。。。
题意:
构造一个 $ n \times n $ 的矩阵,使得该矩阵每一行与每一列的元素的异或和全部相等。
解法:
异或的神奇应用系列。
因为 $ n $ 一定是4的倍数,所以考虑2进制,一定是每4位是一个整体。
现在,为了使矩阵中的数字不同,将数字乘以4.分别在第1,第2和第3位置中添加1,2和3。 每行和每列的XOR仍将保持为0。
CODE:
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
#define LL long long
#define N 1010
int a[N][N],n,cnt;
int main() {
scanf("%d",&n);
for(int i = 1 ; i <= n / 2 ; i++) {
for(int j = 1 ; j <= n / 2 ; j++) {
a[i][j] = cnt * 4;
a[i][j + n / 2] = cnt * 4 + 1;
a[i + n / 2][j] = cnt * 4 + 2;
a[i + n / 2][j + n / 2] = cnt * 4 + 3;
cnt++;
}
}
for(int i = 1 ; i <= n ; i++) {
for(int j = 1 ; j <= n ; j++) {
printf("%d ",a[i][j]);
puts("");
}
}
//system("pause");
return 0;
}
CF1208C的更多相关文章
随机推荐
- 再谈.NET委托(delegate、Func<>)
为了演示委托,我们先来定义一个方法:public static bool IsTen(int i){ return i == 10 ? true : false;} 如果要用自定义委托,则需要声 ...
- 【前端】安装wampserver提示丢失MSVCR100.dll的解决方法
先装Visual C++,再装wampserver 下载的时候请注意选择对应的32bit还是64bit的.然后安装. 再安装wamp
- [NOIP2018模拟赛10.20A]挂分报告
闲扯 先看看了B组,T1 ZROI刚好讲过一个性质原根一般很小的,直接枚举;T2一眼二分然后似乎状压 T3没看 然后上来A组题,T1 flow这名字...网络流?! T1题面非常的社会主义核心价值观, ...
- Android中BroadcastReceiver的使用
1.Android中广播分为静态注册和动态注册 2.下面是一个简单静态注册的例子 创建一个继承BroadcastReceiver的子类 public class DeviceBootReceiver ...
- SublimeText 3 常见快捷键
·F12 跳转至预定义 ·F11 全屏模式 ·Ctrl+A 本文全选 ·Ctrl+F 打开底部搜索框,查找关键字. ·Ctrl+D 本文件选中光标选中的单词 ·Ctrl+L 选中光标所在一行 ·C ...
- JavaScript知识点:分支结构(if、switch)+算法例题
if-else分支 1.if条件应该是boolean类型的值或表达式 2.如果条件不是Boolean,会进行自动转换 以下几种情况会默认转换为 false: if(0).if(0.0) if(NaN) ...
- SQL将同样标识的查询结果查重并用逗号拼接
SELECT B.TaskID , LEFT(SamList, LEN(SamList) - 1) AS ResultListFROM ( SELECT TaskID , ( SELECT Sampl ...
- MUI顶部导航布局
一.头部 核心css mui-bar mui-bar-nav <header class="mui-bar mui-bar-nav"> <a class=&quo ...
- ORACLE 存储过程提高
1.SQLCODE和SQLERRM 2.%TYPE和%ROWTYPE的使用 3.sql%rowcount的作用 1.SQLCODE和SQLERRM SQLCode:数据库操作的返回码,其中 --成功: ...
- java中i=i++的问题
java中 i = i++ 的结果 昨天看到下面这段代码,分享出来给大家看看,大家也可以讨论讨论. int i = 0; i = i++; System.out.println("i的值是 ...