题目传送门

二维树状数组,对于每个颜色开一个树状数组,用容斥求解。

code:

#include <cstdio>
using namespace std; int read()
{
char c;while(c=getchar(),c<''||c>'');
int x=c-'';while(c=getchar(),c>=''&&c<='')x=x*+c-'';
return x;
} int N,M,tr[][][],a[][]; void add(int x,int y,int c,int p)
{
for(int i=x;i<=N;i+=i&-i)
for(int j=y;j<=M;j+=j&-j)
tr[c][i][j]+=p;
return ;
} int get(int x,int y,int c)
{
int ans=;
for(int i=x;i;i-=i&-i)
for(int j=y;j;j-=j&-j)
ans+=tr[c][i][j];
return ans;
} int main()
{
N=read(),M=read();
for(int i=;i<=N;i++)
for(int j=;j<=M;j++)
add(i,j,a[i][j]=read(),);
int Q=read();
while(Q--){
int o=read();
if(o==){
int x=read(),y=read(),c=read();
add(x,y,a[x][y],-);
add(x,y,a[x][y]=c,);
}
else{
int x=read(),fx=read(),y=read(),fy=read(),c=read();
printf("%d\n",get(fx,fy,c)-get(x-,fy,c)-get(fx,y-,c)+get(x-,y-,c));
}
}
}

BZOJ1452_Count_KEY的更多相关文章

随机推荐

  1. MATLAB入门学习(五)

    现在,我们来学画图吧.╭( ・ㅂ・)و ̑̑ 绘制函数图像最常用的命令是plot plot(x,y,s)x,y为同维向量,绘制分别以x为横坐标,y为纵坐标的曲线 如果x y 是矩阵的话则会绘制多条曲线 ...

  2. 警告: Request method 'POST' not supported的原因之一

    警告: Request method 'POST' not supported是经常遇到的,这里记录一下我经常遇到的一种情况,以免忘记. 我使用拦截器拦截所有请求,然后列出不拦截的请求.有时候由于自己 ...

  3. C# Windows服务的安装和卸载批处理

    @ECHO "请按任意键开始安装后台服务. . ."@ECHO "清理原有服务项. . ."%SystemRoot%\Microsoft.NET\Framewo ...

  4. _bstr_t可接受多字节、UNICODE字符串,方便用以字符集转换

    使用_bstr_t需要包含的头文件: #include <comutil.h> #include <comdef.h> // test.cpp : 定义控制台应用程序的入口点. ...

  5. 6.spring:AOP(注解)

     spring Aop AOP面向切面编程,与OOP面向对象编程相辅相成 AOP中最基本的单元是切面 问题: 代码混乱:越来越多的业务需求(日志&验证)加入后,原有的业务方法急剧膨胀,每个方法 ...

  6. Java 循环结构

    Java 循环结构 - for, while 及 do...while 顺序结构的程序语句只能被执行一次.如果您想要同样的操作执行多次,,就需要使用循环结构. Java中有三种主要的循环结构: whi ...

  7. 爬虫之Beautifulsoup及xpath

    1.BeautifulSoup (以 Python 风格的方式来对 HTML 或 XML 进行迭代,搜索和修改) 1.1 介绍 Beautiful Soup提供一些简单的.python式的函数用来处理 ...

  8. [译]React如何区别class和function

    原文 How Does React Tell a Class from a Function? 译注: 一分钟概览-- React最后采用了在React.Component上加入isReactComp ...

  9. MyBatis之Mapper XML 文件详解(一)

    MyBatis 的真正强大在于它的映射语句,也是它的魔力所在.由于它的异常强大,映射器的 XML 文件就显得相对简单.如果拿它跟具有相同功能的 JDBC 代码进行对比,你会立即发现省掉了将近 95% ...

  10. OC之block 和协议

    一.BOLCK (一)简介 BLOCK是什么?苹果推荐的类型,效率高,在运行中保存代码.用来封装和保存代码,有点像函数,BLOCK可以在任何时候执行. BOLCK和函数的相似性:(1)可以保存代码(2 ...