everlasting的博客

A tweiphay OIer.

排序:
默认
按更新时间
按访问量
RSS订阅

poj 2201 Cartesian Tree 笛卡尔树

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

2017-12-04 18:59:53

阅读数:149

评论数:0

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

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

2017-11-29 16:16:52

阅读数:145

评论数:0

bzoj 1251: 序列终结者 splay

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

2017-11-29 08:46:42

阅读数:137

评论数:0

bzoj 4499: 线性函数 线段树

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

2017-11-23 10:13:38

阅读数:133

评论数:0

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

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

2017-11-17 09:52:18

阅读数:94

评论数:0

bzoj 1782: [Usaco2010 Feb]slowdown 慢慢游

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

2017-11-17 08:17:56

阅读数:87

评论数:0

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

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

2017-11-15 14:35:44

阅读数:75

评论数: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...

2017-09-28 11:16:10

阅读数:113

评论数:0

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

→题目链接← 这个题我傻逼了 看到区间查询我下意识地打了线段树 然后一发A了后发现其他人的代码都好快啊 找题解发现都是用的前缀和 靠! 然后又搞了一发前缀和 我把两个代码都放上来吧 前缀和: #include #include using namespa...

2017-08-28 09:18:18

阅读数:177

评论数:0

提示
确定要删除当前文章?
取消 删除