随笔分类 -  题解

摘要:题意:n个连续的点,有若干种颜色,每个颜色会因为某些操作变为另一种颜色,动态查询颜色段数。 解题思路:对每个颜色开一棵平衡树启发式合并应该是最裸的想法,但是我们有更优的! 考虑对每个颜色利用链表储存它的集合,在合并两种颜色时可以很简单通过对比原节点位置的前后颜色来进行答案的更新,然后利用启发式合并进 阅读全文
posted @ 2017-05-09 09:15 Melacau 阅读(356) 评论(1) 推荐(0)
摘要:题意原题很清楚了。 解题思路:裸的平衡树操作,注意动态开点即可。 细节还是比较多的,具体参见代码吧。。。 阅读全文
posted @ 2017-05-08 17:20 Melacau 阅读(201) 评论(0) 推荐(0)
摘要:原题传送门 解题思路:裸平衡树操作,支持区间翻转即可,这里写了无旋treap。 其实平衡树的区间操作就和线段树差不多,你用个标记搞一下就好了,,,,, 阅读全文
posted @ 2017-05-08 13:24 Melacau 阅读(365) 评论(0) 推荐(0)
摘要:原题传送门 题意:给你N个带权点,一开始相互独立(每个点视为单独一个集合),有2种操作:1)合并2个集合;2)查询包含某元素集合内的权值第k小点编号。 解题思路:显然合并就是并查集,而查询则是平衡树实现。 考虑对每个集合开一棵平衡树,这样的话直接合并2棵平衡树的效率最坏是\( n \log n \) 阅读全文
posted @ 2017-05-04 09:44 Melacau 阅读(315) 评论(0) 推荐(0)
摘要:最近开始学习平衡树,在学长的强烈推荐下学习了AVL、红黑树、splay(以上我都还没学)treap。 首先讲一下个人对treap(树堆)的理解。 treap,顾名思义,就是tree+heap,首先因为treap是一棵平衡树,因此它满足二叉排序树的性质,接下来,为了防止BST退化成一条链,它使用了随机 阅读全文
posted @ 2017-05-03 09:08 Melacau 阅读(452) 评论(0) 推荐(0)
摘要:题目传送门 题目大意:给定一棵无根树,每个节点有自己的类别和权值,现在给定两个类别相同的点,叫你求这2点路径上同类别节点的权值和/最大权值。 节点类别与权值会改变。 解题思路:考虑对每一个类别开一棵线段树,动态开点,可以写指针,也可以开数组写链表,然后剩下的就是树剖的东西了。我写的是指针,跑的略慢一 阅读全文
posted @ 2017-04-30 17:41 Melacau 阅读(387) 评论(0) 推荐(0)
摘要:原题传送门 题意:给你一棵树,然后有一个遍历顺序,你需要补全这个遍历顺序,然后输出这个遍历顺序中每个点的出现次数。 解题思路:本来想找树剖的题,结果发现了一题可以直接写lca的。。。。 做法1:非常简单的NOIP式做法就是tjlca后直接树上差分即可。时间效率\( O(n) \)(常数较大).(BZ 阅读全文
posted @ 2017-04-28 09:54 Melacau 阅读(253) 评论(0) 推荐(0)
摘要:原题传送门 题意: 给你一棵树,有2种操作: 1.使得某个点到根节点路径上的所有点权值赋为1。 2.使得某节点的子树中所有节点权值赋为0. 每次操作要求输出权值更改的节点个数。 解题思路: 显然是用树剖来解决问题,考虑用区间赋值的线段树维护区间内1的个数,然后直接按题意树剖求解即可。 操作1的时间效 阅读全文
posted @ 2017-04-26 11:00 Melacau 阅读(231) 评论(0) 推荐(0)
摘要:题目请自行查阅传送门。 典型的树剖题,线段树维护操作,记一下子树在线段树内范围即可。 时间复杂度:\( O(m \log^{2} n) \) 阅读全文
posted @ 2017-04-26 09:23 Melacau 阅读(165) 评论(0) 推荐(0)
摘要:接着找树剖的题。。。传送门(点我) 题意:给你一棵无根树,有三种操作:查询树上2点路径的点权和/最大点权;更改某点的点权。 解题思路:树链剖分裸题,我采用了常数较小的zkw线段树维护剖下来的树(毕竟线段树常数太大很危险),然后就是树剖的东西解决即可。 时间复杂度:期望:\( O(n \log \lo 阅读全文
posted @ 2017-04-25 16:50 Melacau 阅读(281) 评论(0) 推荐(0)
摘要:省选被暴虐,成功爆0。。。顺便ditoly差点全省总分Rank1 orz..... 于是开始赶进度学新算法。。。。 然后决定开始学习树剖orz。。。 发现树剖很好用啊!!!! 然后做了模板题。 题目就是给你一棵树,然后每次操作是查询或者增加一条树上2点路径/子树的值。 解题思路:都说了是树剖模板题, 阅读全文
posted @ 2017-04-25 10:49 Melacau 阅读(198) 评论(0) 推荐(0)
摘要:D1T1(Vigenere) 题意:给你一个原串与一个密码串,问你按照题意规则加密后的密文。 解题思路:暴力模拟。 D1T2(game) 题意:n个物品,每个物品有2个val,然后按照题目当中的价值计算方式计算,求使得价值最高的物品最小的价值。 解题思路:考虑最后一个大臣,显然他很可能是金币最多的人 阅读全文
posted @ 2017-04-18 17:08 Melacau 阅读(193) 评论(0) 推荐(0)
摘要:链接:https://www.luogu.org/problem/lists?name=&orderitem=pid&tag=83|31 D1T1(rps) 题意:给你一个周期,以及胜负关系,求A和B的胜场。 解题思路:暴力抄表,然后暴力计算即可。 D1T2(link) 题意:给你棵树,求最大联合权 阅读全文
posted @ 2017-04-13 16:28 Melacau 阅读(221) 评论(0) 推荐(0)
摘要:传送门:https://www.luogu.org/problem/lists?name=&orderitem=pid&tag=83%7C33 D1T1(toys) 题意:有n个小人,给你M条指令,每条指令可顺可逆(时针),问你操作后的位置在哪。 解题思路:裸模拟即可。 D1T2(running) 阅读全文
posted @ 2017-04-06 09:13 Melacau 阅读(235) 评论(0) 推荐(0)
摘要:链接:https://www.luogu.org/problem/lists?name=&orderitem=pid&tag=83%2C32 D1T1(magic) 题意:看题目。。 解题思路:纯模拟。。。 D1T2(message) 题意:给你张图,找最小环。 解题思路:拓扑以后跑环即可。 D1T 阅读全文
posted @ 2017-04-01 08:17 Melacau 阅读(173) 评论(0) 推荐(0)
摘要:学弟不是说要出丧题吗》》所以我就研究了1天lca又研究了1天tj然后研究了一天天天爱跑步,终于写了出来。(最后的平均用时为240ms。。。比学弟快了1倍。。。) 题意:给你颗树,然后有m个东西在树上移动,每s移动一条边。路径为S[i]->T[i],现在求在w[i]时第i各节点上有多少个东西。 解题思 阅读全文
posted @ 2017-03-24 16:25 Melacau 阅读(495) 评论(0) 推荐(0)
摘要:原题链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1221 题意:你有3种方法进行对毛巾的处理,不同的处理方法有不同的cost,问你要如何规划才可以使得总花费最低。 解题思路:我们对每个点进行拆点,分为用过的毛巾和没用过的,这样就可以较为简单的 阅读全文
posted @ 2017-03-22 17:12 Melacau 阅读(183) 评论(0) 推荐(0)
摘要:原题链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1061 题意:问你如何购买志愿者使得满足题意的总费用最小。 解题思路:首先,由于志愿者存在的时间是一个区间,我们考虑使用差分序列,这样的话我们就可以比较轻松的建图跑一遍最小费用最大流了。我们定 阅读全文
posted @ 2017-03-22 10:59 Melacau 阅读(235) 评论(0) 推荐(0)
摘要:原题链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1070 题意:问你如何分配老司机使得每部车的等待时间之和最短。 解题思路:本题不易正做,考虑逆向解答,显然我们有对于一部车,我们枚举它被第i个老司机倒数第j个修,这样的带来的等待时间便是一定的 阅读全文
posted @ 2017-03-22 09:46 Melacau 阅读(244) 评论(0) 推荐(0)
摘要:我出的水题,因为是白色情人节前一天,所以题目背景。。 试题:/s/1pKKkCeJ vyh3 (百度云) T1:chocolate 题意:给你n个妹子,每个妹子对你的初始好感度为c0[i],你不给她x块巧克力她的好感度会下降c1点,你给她y块巧克力她的好感度会上升c2点,现在问你,你有m块巧克力的情 阅读全文
posted @ 2017-03-18 22:03 Melacau 阅读(312) 评论(0) 推荐(0)