一名苦逼的OIer,想成为ACMer

Iowa_Battleship

随笔分类 -  树状数组

BZOJ1227或洛谷2154 [SDOI2009]虔诚的墓主人
摘要:"BZOJ原题链接" "洛谷原题链接" 又是扫描线,题解可看 "大佬的博客" (太懒了不想打) cpp include include using namespace std; const int N = 1e5 + 10; const long long mod = 2147483648LL; s 阅读全文

posted @ 2018-10-30 09:11 Iowa_Battleship 阅读(131) 评论(0) 推荐(0) 编辑

BZOJ1935或洛谷2163 [SHOI2007]园丁的烦恼
摘要:"BZOJ原题链接" "洛谷原题链接" 很容易想到二维前缀和。 设$S[i][j]$表示矩阵$(0, 0)(i, j)$内树木的棵数,则询问的矩形为$(x, y)(xx, yy)$时,答案为$S[xx][yy] S[x 1][yy] S[xx][y 1] + S[x 1][y 1]$。 但这题坐标极 阅读全文

posted @ 2018-10-29 20:17 Iowa_Battleship 阅读(166) 评论(0) 推荐(0) 编辑

洛谷4054 [JSOI2009]计数问题
摘要:"原题链接" 二维树状数组模板题。 对每一种颜色开一棵二维树状数组统计即可。 cpp include using namespace std; const int N = 310; const int M = 110; int C[M][N][N], a[N][N], n, m; inline in 阅读全文

posted @ 2018-09-24 14:47 Iowa_Battleship 阅读(118) 评论(0) 推荐(0) 编辑

BZOJ1106 [POI2007]立方体大作战tet
摘要:树状数组 "原题链接" 先说一个结(cai)论(xiang),当两个相同的元素之间有$x$个元素是成单的,那么一定要交换$x$次。 ~~然而我并不会证(举例子算吗)~~ 然后我们就可以考虑用树状数组来维护两个相同元素之间有多少元素成单。 我们可以直接一个指针扫过去,当遇到一个第一次出现的元素$x$时 阅读全文

posted @ 2018-08-25 19:49 Iowa_Battleship 阅读(170) 评论(0) 推荐(0) 编辑

导航