博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj2155二维树状数组区间更新
阅读量:4321 次
发布时间:2019-06-06

本文共 1107 字,大约阅读时间需要 3 分钟。

垃圾poj又交不上题了,也不知道自己写的对不对

/*给定一个矩阵,初始化为0:两种操作第一种把一块子矩阵里的值翻转:0->1,1->0第二种询问某个单元的值直接累计单元格被覆盖的次数,如果被覆盖奇数次就是1,被覆盖偶数次就是0树状数组解区间更新。。*/#include
#include
#include
#include
using namespace std;#define maxn 1005int bit[maxn][maxn],n,q;void add(int x,int y,int num){ for(int i=x;i<=n;i+=i&-i) for(int j=y;j<=n;j+=j&-j) bit[i][j]+=num;}int query(int x,int y){ int res=0; for(int i=x;i;i-=i&-i) for(int j=y;j;j-=j&-j) res+=bit[i][j]; return res;}int main(){ int t,x1,x2,y1,y2; char op[2]; scanf("%d",&t); while(t--){ scanf("%d%d",&n,&q); while(q--){ scanf("%s",&op); if(op[0]=='C'){ scanf("%d%d%d%d",&x1,&y1,&x2,&y2); add(x1,y1,1);add(x1,y2+1,1); add(x2+1,y1,1);add(x2+1,y2+1,1); } else { scanf("%d%d",&x1,&y1); printf("%d\n",query(x1,y1)%2); } } printf("\n"); }}

 

转载于:https://www.cnblogs.com/zsben991126/p/10084681.html

你可能感兴趣的文章
hdu 1021 Fibonacci Again
查看>>
JVM架构_XmnXmsXmxXss有什么区别:转
查看>>
PHPExcel 使用心得
查看>>
洛谷 P3374 【模板】树状数组 1(单点加,区间和)
查看>>
verilog 代码编写小记
查看>>
PyQT的安装和配置
查看>>
从 docker 到 runC
查看>>
守护进程
查看>>
php数组
查看>>
Linux 防火墙
查看>>
互联网金融P2P主业务场景自动化测试
查看>>
My third day of OpenCV
查看>>
Android的View和ViewGroup分析
查看>>
echarts.js中的图表大小自适应
查看>>
Delphi的FIFO实现
查看>>
牛客网暑期ACM多校训练营(第一场) - J Different Integers(线段数组or莫队)
查看>>
(转)AS3 面相对象 高级话题
查看>>
Missile
查看>>
关于kindedit和 Uedit后者兼容前者
查看>>
微软BI 之SSIS 系列 - 利用 SSIS 模板快速开发 SSIS Package
查看>>