CF198 div1 D - Iahub and Xors
简单说就是左边x,y按照奇偶分为四种对于答案的影响都是不相关的
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int MAXN = 1e3+5;
int N,M;
ll tree[4][MAXN][MAXN];
int ju(int x, int y) {
int tt = 0;
if(x%2) tt ++;
if(y%2) tt += 2;
return tt;
}
void Update(int x,int y, ll v) {
int ty = ju(x,y);
for(int i = x; i <= N; i += i&-i)
for(int j = y; j <= N; j += j&-j)
tree[ty][i][j] ^= v;
}
ll Sum(int x,int y) {
int ty = ju(x,y);
ll ans = 0;
for(int i = x; i > 0; i -= i&-i)
for(int j = y; j > 0; j -= j&-j)
ans ^= tree[ty][i][j];
return ans;
}
int main(){
while(~scanf("%d %d",&N,&M)) {
memset(tree ,0, sizeof(tree));
for(int i = 1; i <= M; ++i) {
int a,b,c,d; int ty; ll v;
scanf("%d",&ty);
if(ty == 2) {
scanf("%d %d %d %d %lld",&a,&b,&c,&d,&v);
Update(a,b,v);
Update(c+1,b,v);
Update(a,d+1,v);
Update(c+1,d+1,v);
}else {
ll ans = 0;
scanf("%d %d %d %d",&a,&b,&c,&d);
ans ^= Sum(c,d);
ans ^= Sum(a-1,d);
ans ^= Sum(c,b-1);
ans ^= Sum(a-1,b-1);
printf("%lld\n",ans);
}
}
}
return 0;
}
CF198 div1 D - Iahub and Xors的更多相关文章
- Codeforces Round #198 (Div. 1) D. Iahub and Xors 二维树状数组*
D. Iahub and Xors Iahub does not like background stories, so he'll tell you exactly what this prob ...
- CF341D Iahub and Xors
CF341D Iahub and Xors 给定一个 \(n\times n\) 的矩阵,平面异或,求平面异或和 \((n\leq10^3,\ m\leq10^5)\) 树状数组 这里主要是记录一下板 ...
- Codeforces D. Iahub and Xors
题目大意:给定一个N*N的区间,1:对(x0,y0,x1,y1)每个直 都xor v: 2: 求(x0,y0,x1,y1)区间的 sum xor: http://codeforces.com/blog ...
- Iahub and Xors Codeforces - 341D
二维线段树被卡M+T...于是去学二维树状数组区间更新区间查询 树状数组维护数列区间xor的修改.删除(就是把原问题改成一维): 以下p*i实际都指i个p相xor,即(i&1)*pa表示原数列 ...
- codeforces 341d (树状数组)
problem Iahub and Xors 题目大意 一个n*n的矩阵,要求支持两种操作. 操作1:将一个子矩阵的所有值异或某个数. 操作2:询问某个子矩阵的所以值的异或和. 解题分析 由于异或的特 ...
- Codeforces Round #198 (Div. 1 + Div. 2)
A. The Wall 求下gcd即可. B. Maximal Area Quadrilateral 枚举对角线,根据叉积判断顺.逆时针方向构成的最大面积. 由于点坐标绝对值不超过1000,用int比 ...
- CF#345 (Div1)
论蒟蒻如何被cf虐 以下是身败名裂后的题解菌=========== Div1 A.Watchmen 有n个点,每个点有一个坐标.求曼哈顿距离=欧几里得距离的点对数量. 只需要统计x或y一样的点对数量. ...
- 图论 SRM 674 Div1 VampireTree 250
Problem Statement You are a genealogist specializing in family trees of vampires. Vampire famil ...
- jq对象转为dom对象:$(".div1")[0] dom对象转为jq对象:$(dom对象)
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...
随机推荐
- Lucene 5.X 版本索引文件格式
原文链接:https://my.oschina.net/rickylau/blog/527602 名称 文件拓展名 描述 段文件 segments_N 保存了索引包含的多少段,每个段包含多少文档. 段 ...
- BZOJ 2406: 矩阵 [上下界网络流 二分答案]
2406: 矩阵 题意:自己去看吧,最小化每行每列所有元素与给定矩阵差的和的绝对值中的最大值 又带绝对值又带max不方便直接求 显然可以二分这个最大值 然后判定问题,给定矩阵每行每列的范围和每个元素的 ...
- SDN第四次上机作业
1.建立以下拓扑,并连接上ODL控制器. 2.利用ODL下发流表,使得h3在10s内ping不通h1,10s后恢复. 3.借助Postman通过ODL的北向接口下发流表,再利用ODL北向接口查看已下发 ...
- SpringMVC之使用requestMapping映射请求、映射参数、映射头
1. 映射请求 作用:使用requestMapping可以指定处理器可以处理那些请求 地方:类和方法前面都可以 @requestMapping 类定义处: 提供初步的请求映射信息,相对于web应用的根 ...
- 网络配置:linux学习第一篇
1. 先使用dhclient获取ip 再使用命令ip addr查看获取到的ip 2. 设置静态IP 编辑网卡配置文件,路径: 3. 重启网络服务 命令:systemctl ...
- Nginx 静态资源缓存设置
在开发调试web的时候,经常会碰到因浏览器缓存(cache)而经常要去清空缓存或者强制刷新来测试的烦恼,提供下apache不缓存配置和nginx不缓存配置的设置.在常用的缓存设置里面有两种方式,都是使 ...
- [HNOI2008] GT考试
[HNOI2008] GT考试 标签 : DP 矩阵乘法 题目链接 题意 n位数中不出现一个子串的方案数. 题解 \(设dp[i][j]\)为前i位匹配到j时的合法方案数.(所谓合法,就是不能有别的匹 ...
- CENTOS6.6下mysql MMM架构搭建
本文来自我的github pages博客http://galengao.github.io/ 即www.gaohuirong.cn MMM(Master-Master replication mana ...
- EntityFramework Core 2.0执行原始查询如何防止SQL注入?
前言 接下来一段时间我们来讲讲EntityFramework Core基础,精简的内容,深入浅出,希望为想学习EntityFramework Core的童鞋提供一点帮助. EntityFramewor ...
- R学习笔记:了解R的使用
R是一种区分大小写的解释性语言,只支持单行注释,注释由符号#开头,当前行出现在#之后的任何文本都会被R解释器忽略.R脚本的一次执行叫做一个会话(Session),可以通过函数quit()退出当前的会话 ...