BZOJ_P1452 [JSOI2009]Count(二维树状数组)
来源:互联网 发布:linux中的cat命令 编辑:程序博客网 时间:2024/06/06 09:07
BZOJ传送门
Time Limit: 10 Sec Memory Limit: 64 MB
Submit: 1749 Solved: 1046
[Submit][Status][Discuss]
Description
Input
Output
Sample Input
Sample Output
1
2
HINT
Source
Sol:
二维树状数组裸题..如果你不介意树套树的话其实也可以…
#include<cstdio>#define N 305#define C 105inline int in(int x=0,char ch=getchar()){while(ch>'9'||ch<'0') ch=getchar(); while(ch>='0'&&ch<='9') x=(x<<3)+(x<<1)+ch-'0',ch=getchar();return x;}int d[N][N][C],a[N][N];int n,m,q;inline void Add(int x,int y,int c,int v){ for(int i=x;i<=n;i+=i&-i) for(int j=y;j<=m;j+=j&-j) d[i][j][c]+=v;}inline int Sum(int x,int y,int c,int res=0){ for(int i=x;i;i-=i&-i) for(int j=y;j;j-=j&-j) res+=d[i][j][c];return res;}int main(){ n=in(),m=in();int opt,x1,x2,y1,y2,c; for(int i=1;i<=n;i++) for(int j=1;j<=m;j++) a[i][j]=in(),Add(i,j,a[i][j],1); q=in(); while(q--){ opt=in(); if(opt^1){ x1=in(),x2=in(),y1=in(),y2=in(),c=in(); printf("%d\n",Sum(x2,y2,c)-Sum(x2,y1-1,c)-Sum(x1-1,y2,c)+Sum(x1-1,y1-1,c)); } else{ x1=in(),y1=in(),c=in(); Add(x1,y1,a[x1][y1],-1),a[x1][y1]=c; Add(x1,y1,c,1); } }return 0;}
2 0
- BZOJ_P1452 [JSOI2009]Count(二维树状数组)
- 【BZOJ】【P1452】【JSOI2009】【Count】【二维树状数组】
- BZOJ 1452 [JSOI2009]Count 二维树状数组
- 【BZOJ1452】【JSOI2009】Count 二维树状数组
- BZOJ1452 [JSOI2009]Count(二维树状数组)
- [BZOJ1452][JSOI2009]Count(二维树状数组)
- BZOJ1452: [JSOI2009]Count 二维树状数组
- [BZOJ1452][JSOI2009]Count(二维树状数组)
- BZOJ 1452: [JSOI2009]Count 二维树状数组
- 1452: [JSOI2009]Count 二维树状数组
- bzoj1452: [JSOI2009]Count(二维树状数组)
- BZOJ 1452: [JSOI2009]Count 二维树状数组
- 【二维树状数组】BZOJ1452 [JSOI2009]Count
- bzoj1452[JSOI2009]Count 二维树状数组/树套树
- BZOJ 1452: [JSOI2009]Count (二维树状数组)
- 【bzoj 1452】[JSOI2009]Count(二维树状数组)
- 二维树状数组(bzoj 1452: [JSOI2009]Count)
- [二维树状数组]BZOJ 1452—— [JSOI2009]Count
- Git Visual Studio gitignore 去除不需要的dll Nuget包等等文件
- 浮点数用double
- android项目引用library导致引用android-support-v4.jar冲突
- c++设计一个计时器(能够暂停,重新开始,继续)的功能。写的不好,仅供参考!
- usb总线系统介绍
- BZOJ_P1452 [JSOI2009]Count(二维树状数组)
- hdu 【1715】大菲波数
- Python使用sqlite3操作数据库
- 业务 加载DB数据到内存的 一些基本原则
- fflush的用途
- S5PV210加文件头
- Linux平台下的内存泄漏检测
- 大数组开在main函数外面
- BZOJ2995同余方程