【bzoj1176】[Balkan2007]Mokia】的更多相关文章

[BZOJ1176][Balkan2007]Mokia Description 维护一个W*W的矩阵,初始值均为S.每次操作可以增加某格子的权值,或询问某子矩阵的总权值.修改操作数M<=160000,询问数Q<=10000,W<=2000000. Input 第一行两个整数,S,W;其中S为矩阵初始值;W为矩阵大小接下来每行为一下三种输入之一(不包含引号):"1 x y a""2 x1 y1 x2 y2""3"输入1:你需要把(…
bzoj1176 题目描述 维护一个W*W的矩阵,初始值均为S(题目描述有误,这里的S没有任何作用!).每次操作可以增加某格子的权值,或询问某子矩阵的总权值.修改操作数M<=160000,询问数Q<=10000,W<=2000000. 输入 第一行两个整数,S,W;其中S为矩阵初始值;W为矩阵大小接下来每行为一下三种输入之一(不包含引号):1 x y a2 x1 y1 x2 y23输入1:你需要把(x,y)(第x行第y列)的格子权值增加a输入2:你需要求出以左下角为(x1,y1),右上角…
题目描述: 维护一个W*W的矩阵,初始值均为S.每次操作可以增加某格子的权值,或询问某子矩阵的总权值.修改操作数M<=160000,询问数Q<=10000,W<=2000000. 输入: 第一行两个整数,S,W;其中S为矩阵初始值;W为矩阵大小 接下来每行为一下三种输入之一(不包含引号): "1 x y a" "2 x1 y1 x2 y2" "3" 输入1:你需要把(x,y)(第x行第y列)的格子权值增加a 输入2:你需要求出以…
[BZOJ1176][BOI2007]Mokia 摩基亚 题面 bzoj 洛谷 题解 显然的\(CDQ\)\(/\)树套树题 然而根本不想写树套树,那就用\(CDQ\)吧... 考虑到点\((x1,y1)\)和\((x2,y2)\)区域内既有上限又有下限我们不是很好算 于是将这个区域的贡献写成另外一种形式, 记\((x,y)\)与\((0,0)\)之间区域的贡献为\(S_{(x,y)}\),则上面的贡献可表示为 \(S_{(x2,y2)}-S_{(x2,y1-1)}-S_{(y2,x1-1)}+…
[BZOJ1176]Mokia(CDQ分治) 题面 BZOJ权限题啊,,,, dbzoj真好 Description 维护一个W*W的矩阵,初始值均为S.每次操作可以增加某格子的权值,或询问某子矩阵的总权值.修改操作数M<=160000,询问数Q<=10000,W<=2000000. Input 第一行两个整数,S,W;其中S为矩阵初始值;W为矩阵大小 接下来每行为一下三种输入之一(不包含引号): "1 x y a" "2 x1 y1 x2 y2"…
1176: [Balkan2007]Mokia Time Limit: 30 Sec Memory Limit: 162 MB Submit: 1059 Solved: 432 [Submit][Status][Discuss] Description 维护一个W*W的矩阵,初始值均为S.每次操作能够添加某格子的权值,或询问某子矩阵的总权值.改动操作数M<=160000,询问数Q<=10000,W<=2000000. Input 第一行两个整数,S,W;当中S为矩阵初始值;W为矩阵大小…
题目大意:给定一个 N*N 的矩形,有 Q 次操作,每个操作可以是矩形单点修改或查询子矩形的权值和. 题解:CDQ分治适合处理修改操作之间互不影响且支持离线的题目. 满足以上操作条件的显然可以树套树来做,不过代码量起飞,我也写不出来 qaq.. 学到了利用 cdq 分治来解决这种问题.发现操作之间存在一个时间维度,即:能够对当前查询操作产生贡献的一定是时间在该询问之前的修改操作.维护子矩形的权值和可以利用二维前缀和进行处理,即:维护 (1,1) 到 (n,m) 之间的权值和即可.因此,问题转化成…
Description 给你一个 \(W~\times~W\) 的矩阵,每个点有权值,每次进行单点修改或者求某子矩阵内权值和,允许离线 Input 第一行是两个数字 \(0\) 和矩阵大小 \(W\) 下面每行可能会出现如下参数 \(1,x,y,A\) 单点修改格子 \(x,y\) 为 \(A\) \(2,x_1,y_1,x_2,y_2\) 查询给定矩阵的权值和 \(3\) 结束查询与修改 Output 对每个查询给出一行作为答案 Hint \(1~\leq~W~\leq~2000000\) 修…
http://www.lydsy.com/JudgeOnline/problem.php?id=1176 Description(题面本人自行修改了一下) 维护一个W*W的矩阵,初始值均为0.每次操作可以增加某格子的权值,或询问某子矩阵的总权值.修改操作数M<=160000,询问数Q<=10000,W<=2000000. Input 第一行两个整数,S,W;其中S为数据编号:W为矩阵大小 接下来每行为一下三种输入之一(不包含引号): "1 x y a" "2…
→原题← ↑这样子我就不复制题面啦~ 就是一题很裸的字典树而已,不过空间卡的很死,直接开个数组 tr[N][52] 什么之类的一定会RE的(惨痛的教训) 当字典树空间不够而时间限制又比较宽松时,我们可以像平时前向星存图那样动态地为字典树开点(哪一个字典树不是动态开点.. 总之把数组大小开到最极限的 5e6 可以勉强通过此题. 我读入时使用了 getline 这样子会很慢啦,可以直接巧妙地一个个 getchar 的(好在BZOJ上限制的是10秒) 代码~ #include<iostream> #…