题目大意:给定一个N*N的区间,1:对(x0,y0,x1,y1)每个直 都xor v;

2: 求(x0,y0,x1,y1)区间的 sum xor;

http://codeforces.com/blog/entry/8755    

算得上经典题:

 #include<stdio.h>
#include<algorithm>
#include<math.h>
#include<vector>
#include<string.h>
#include<string>
#include<set>
#include<map>
#include<iostream>
#include<set> using namespace std;
typedef long long ll;
int n; ll c[][][][]; ll query(int x,int y)
{
ll ret=;
for (int i=x;i>;i-=i&-i)
for (int j=y;j>;j-=j&-j)
ret^=c[x&][y&][i][j];
return ret;
} void update(int x,int y,ll v)
{
for (int i=x;i<=n;i+=i&-i)
for (int j=y;j<=n;j+=j&-j)
c[x&][y&][i][j]^=v;
} int main()
{
int m,x,y,xx,yy,op;
ll v;
scanf("%d%d",&n,&m);
while (m--)
{
scanf("%d%d%d%d%d",&op,&x,&y,&xx,&yy);
if (op==)
{
x--;
y--;
printf("%I64d\n",query(x,y)^query(x,yy)^query(xx,y)^query(xx,yy));
}
else
{
scanf("%I64d",&v);
xx++;
yy++;
update(x,y,v);
update(xx,yy,v);
update(x,yy,v);
update(xx,y,v);
}
}
return ;
}

最新文章

  1. js最详细的基础,jquery 插件最全的教材
  2. XE版本 InputQuery 可以同时填多个输入值
  3. 浮动【电梯】或【回到顶部】小插件:iElevator.js
  4. HTML--10Jquery
  5. spark transformation与action操作函数
  6. 【iOS-Cocos2d游戏开发之四】独自收集Cocos2d提供的字体!共57种(有对照的字体图)
  7. FileReader乱码
  8. PowerShell 中使用json对象的性能比较
  9. 《转》Frameset布局
  10. mysqldump报错
  11. myeclipse2014安装aptana3.4.0插件
  12. HDU4474
  13. 一篇搞定Python正则表达式
  14. OpenGL shader渲染贴图
  15. 第一行代码阅读笔记---AndroidMainfest.xml分析
  16. html5-表单的综合实例
  17. Android Studio 使用入门
  18. stl源码剖析 详细学习笔记 算法(5)
  19. 安卓程序代写 网上程序代写[原]Android开发技巧--Application
  20. CoreImage

热门文章

  1. 在64位的linux中运行32位的应用程序
  2. Tarjan求强联通分量+缩点
  3. 使用CSS来制作类似「黑幕」的效果
  4. (50)zabbix API二次开发使用与介绍
  5. axure笔记--内置变量
  6. php框架的特性总结
  7. Dajngo admin
  8. Python从文件中读取数据(2)
  9. Pandas中loc,iloc与直接切片的区别
  10. c++ heap学习