BiuのACM
坚持是一种饼~

随笔分类 -  數據結構

SPOJ-375-Qtree-树链剖分(边的剖分)
摘要:【前言】TTvTT先让我呜呜呜呜呜呜呜呜呜呜呜呜呜呜呜一下。。。。。。经历了5发WA,6发RE,3发TLE后,今天终于和这道题做了个了断了。题意:一棵树,给出边权值,有两种操作:更改一条边的值;查找a到b路径上的最大边权值。【唧唧喳喳】这道题算是树链剖分对边剖分的一道很好的训练题吧,但是数据好像比较... 阅读全文
posted @ 2014-10-13 08:42 Pobo_biu 阅读(406) 评论(0) 推荐(0)
hdu-3699-Aragorn's Story-樹鏈剖分模板題
摘要:樹鏈剖分學習blog:http://blog.csdn.net/jiangshibiao/article/details/24669751關於這題的學習blog:http://blog.csdn.net/acdreamers/article/details/10594121下面來說說樹鏈剖分の我的理... 阅读全文
posted @ 2014-09-25 10:39 Pobo_biu 阅读(229) 评论(0) 推荐(0)
CodeForces 383C-dfs序-线段树
摘要:题意:一棵根为1的多叉树有n个点,题目有m次询问。第一行输入n和m,第二行输入n-1条边, 以后m行输入操作,操作有两种:1 x val 表示 节点的值x+val,同时它的儿子层节点的值-val,孙子层节点的值+val...如此往下直到叶子节点;2 x 表示输出x节点的当前值。思路:类似poj332... 阅读全文
posted @ 2014-09-12 18:36 Pobo_biu 阅读(292) 评论(0) 推荐(0)
poj-3321-dfs序-线段树-邻接表
摘要:思路:用邻接表存图,卡vector【这里被卡哭了QAQ】,用dfs遍历的顺序重新给节点编号,遍历时记录儿子数目。用dfs序建立线段树,change的时候单点更新,查询某子树上的苹果树即是查询该节点[i, i+childnum]这个区间的苹果数目,i指dfs序。总结:邻接表出边入边傻傻搞不清楚QAQA... 阅读全文
posted @ 2014-09-09 16:15 Pobo_biu 阅读(230) 评论(0) 推荐(0)
poj2528-Mayor's posters-线段树离散化、基础
摘要:题意:高度为1byte的n(n 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 #define lson l, m, rt arr; 16 vector sor; 17 int lazy[... 阅读全文
posted @ 2014-09-06 16:17 Pobo_biu 阅读(159) 评论(1) 推荐(0)
hdu3333-Turing Tree-线段树+离线+离散化
摘要:前言:引用某某的话——我是猪QAQ。。。。。题意就不复述了。解题思路:一般的建树,求和。离散化:用另一个数组sor[]记录原数组,sort一遍,用unique去重,用sor[]数组元素下标,代替原数组中元素,然后在sor[]数组里二分查找元素,last[]数组记录第i个元素上一次出现的位置。离线处理... 阅读全文
posted @ 2014-09-04 19:51 Pobo_biu 阅读(176) 评论(0) 推荐(0)
poj 1151-atlantis-线段树扫描线求面积并
摘要:= =||好像放在草稿箱里长毛了~~~~~本来想写个好详细好详细的扫描线哒~~~可是看到代码都不想动了,再跟别的大牛的代码一比较,觉得自己这单点更新简直就是纯暴力伪线段树吖~~~还有那离散化【离散了还用函数去O(n)地找是怎么回事啊喂!】如果题目范围是10000个点估计我就布吉岛爆到哪里去了。。。。... 阅读全文
posted @ 2014-08-30 13:03 Pobo_biu 阅读(140) 评论(0) 推荐(0)
HDU-3038-How Many Answers Are Wrong - 种类并查集
摘要:题意: 有兩個人在玩遊戲,有N個數,FF會詢問TT,sum(a, b)=A[a] + ... +A[b]是多少,TT會告訴他正確的答案,也會告訴他錯誤的。要你統計錯誤的答案有多少組。(如果當前的是錯的統計完就直接忽略掉)总结:这道题花了我很长时间,结果还是看了别人的题解才想到的。其实就是一个小细节... 阅读全文
posted @ 2014-08-16 13:02 Pobo_biu 阅读(215) 评论(0) 推荐(0)
poj1988-种类并查集
摘要:题意:有N个立方体(1 2 #include 3 #include 4 const int maxn = 30004; 5 int par[maxn], h[maxn], ch[maxn]; 6 void init() 7 { 8 for(int i = 0; i < maxn; i++... 阅读全文
posted @ 2014-08-09 12:24 Pobo_biu 阅读(253) 评论(0) 推荐(0)
hdu-4893-Wow! Such Sequence!-线段树【2014多校第三场-J】
摘要:题意:一个初始为0的数组,支持三种操作:1、向第k个数添加d,(|d| 2 #include 3 #include 4 using namespace std; 5 #define maxn 100005 6 #define lson l, m, rt= x - fib[a-1]) re... 阅读全文
posted @ 2014-07-31 01:09 Pobo_biu 阅读(334) 评论(0) 推荐(0)
hdu 1829-A Bug's LIfe(简单带权并查集)
摘要:题意:Bug有两种性别,异性之间才交往, 让你根据数据判断是否存在同性恋,输入有 t 组数据,每组数据给出bug数量n, 和关系数m, 以下m行给出相交往的一对Bug编号 a, b。只需要判断有没有,按题目要求输出。这题有点坑的地方在于输出上多了一行空行,不PE都没注意到。思路: 用一个数组gen... 阅读全文
posted @ 2014-07-15 16:29 Pobo_biu 阅读(1057) 评论(0) 推荐(1)