当前搜索:

poj 2201 Cartesian Tree 笛卡尔树

→题目链接← 【想说的话】 谁能告诉我笛卡尔树有什么妙的用处啊.... 【题解】 裸笛卡尔树 笛卡尔树的定义题中已经说的挺完整的了 建树时,先把所有的点以key从小到大排序,然后从前往后插入到树中 具体实现方法为:从根节点开始扫,当找到一个点满足val[x]大于val[now]并且val[...
阅读(84) 评论(0)

bzoj 1503: [NOI2004]郁闷的出纳员 splay

→题目链接← 【想说的话】 数据结构可真是难调啊... 无比的心累 【题解】 平衡树都能过 几天前的我一定会用pbds来做 但是现在 我!不!一!样! 对于增加和减少工资,不用打标记什么的,因为询问时询问的是相对排名,所以记录一下变化量,然后对于新加入的工...
阅读(67) 评论(0)

bzoj 1251: 序列终结者 splay

→题目链接← 【想说的话】 调了两天半... splay原来没有那么shi 【题解】 就是splay...我这里就不写什么splay教程了 (代码里维护了一堆与本题无关的东西) 【代码】 #include #define MAXN 100010 #de...
阅读(62) 评论(0)

bzoj 4499: 线性函数 线段树

→题目链接← 【想说的话】 没什么想说的-____- 【题解】 我们都知道 f2(f1(x))=k2(k1*x+b1)+b2=k1*k2*x+k2*b1+b1 然后用线段树去维护连续的一段最终的f(x)是什么 查询修改就都很简单了... 【代码】 #incl...
阅读(88) 评论(0)

bzoj 4094: [Usaco2013 Dec]Optimal Milking 线段树

→题目链接← 【想说的话】 再次手误... 【题解】 对于每个区间维护四种最大值 1、选左端点不选右端点 2、选右端点不选左端点 3、两个端点都选 4、两个端点都不选 然后用线段树搞一搞就好了 注意下pushup的转移 【代码】 #include ...
阅读(50) 评论(0)

bzoj 1782: [Usaco2010 Feb]slowdown 慢慢游

→题目链接← 【想说的话】 总是因为一些手误导致调半天... 【题解】 按dfs序建线段树,然后每次先单点查询再区间加1 【代码】 #include #define inf 1000000000 #define MAXN 100010 using names...
阅读(55) 评论(0)

bzoj 1798: [Ahoi2009]Seq 维护序列seq 线段树

→题目链接← 【想说的话】 又是一道题解泛滥的题 【题解】 裸线段树,注意乘的时候加的标记也要乘,传标记时要乘一下 看代码吧... 【代码】 #include #define inf 1000000000 #define MAXN 100005 typ...
阅读(53) 评论(0)

bzoj 3381: [Usaco2004 Open]Cave Cows 2 洞穴里的牛之二

→题目链接← 裸线段树 查询最小值 代码: #include #include #include using namespace std; struct node{ int l,r,Min; }tree[30000*4]; void build(int num,in...
阅读(83) 评论(0)

bzoj 4397: [Usaco2015 dec]Breed Counting 前缀和/线段树

→题目链接← 这个题我傻逼了 看到区间查询我下意识地打了线段树 然后一发A了后发现其他人的代码都好快啊 找题解发现都是用的前缀和 靠! 然后又搞了一发前缀和 我把两个代码都放上来吧 前缀和: #include #include using namespa...
阅读(133) 评论(0)
    个人资料
    持之以恒
    等级:
    访问量: 5万+
    积分: 1826
    排名: 2万+
    最新评论