摘要: 二逼平衡树,动态逆序对两道都T掉了。只A掉了时限5s的动态排名系统。 我以为只是我的树套树常数太大,在网上找了几份线段树套伸展树,没有A掉动态逆序对的。跑的比我的快,是COGS的锅吗,可是我的在本地跑二逼平衡树的第九个点跑了7s,啊啊啊。 而且网上的树套树普遍是线段树套Treap,我想改改我的板子也 阅读全文
posted @ 2018-04-01 20:58 qjs12 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 求有多少只猴子可以在所有树上跳来跳去。 求出图的最小生成树,因为最小生成树是一颗瓶颈生成树(树上最大边权最小),记录下这棵树的最大边权。因为猴子是一条一条边跳的,所以只要猴子能越过这条边,就能越过所有的边,进而到达所有的树。 阅读全文
posted @ 2018-04-01 20:41 qjs12 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 首先对于一个强联通分量内的所有牛来说,他们彼此都认为对方受欢迎,且对于这个强联通分量内的牛A来说,假设它认为不在这个强连通分量内的一头牛B是受欢迎的,那么这个强联通分量内的所有牛都认为牛B受欢迎。 我们用Tarjan算法求一遍SCC,把一个SCC缩成一个点,并添加连接不同SCC的边,注意这条边是一条 阅读全文
posted @ 2018-04-01 20:30 qjs12 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 该题要求满足 i<j<k 且 ai<aj>ak 的三元组(i,j,k)的个数。 对于经典的逆序对的一种求解方法是对于元素 ai 求出满足 aj>ai 且 i<j 的元素的个数,线段树,树状数组以及平衡树都可以支持这个操作,用平衡树简单清晰,只需要依次插入每个元素并求一下当前平衡树中大于 ai 的元素 阅读全文
posted @ 2018-04-01 19:40 qjs12 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 终于知道为什么人人都感慨Splay功能强大了。这道题更像是块状链表的裸题,而且块状链表巨小无比的常数跑起来也非常劲啊。但是我寒假照着板子敲了一遍......敲得我心累啊,敲完以后我就有了我以后再也不会写分块了的念头。但是最近写树套树三道两道被卡常,而看着分块水过一道一道,我心里又慌了...... 说 阅读全文
posted @ 2018-04-01 18:01 qjs12 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 这是一道经典题目了,刘汝佳在紫书上讲解了三种方法,复杂度从O(n3)->O(n2)->O(n)。 记得高一我写这道题的时候迷迷糊糊的,对于O(n)的算法并不是很理解,今天我重新写这道题并用O(nlogn)的分治方法解决,也是为写维护数列做准备。 divide and conquer 分而治之的思想可 阅读全文
posted @ 2018-04-01 17:22 qjs12 阅读(317) 评论(0) 推荐(0) 编辑
摘要: 求S-T的路径中最长边与最短边比值最小的路径。 我不知道怎么做...主要就是这个比值最小,不知道怎么处理,即使看到最小生成树的标签,也没想到咋做...... 解题的思想很简单,只要我们确定了最短边的长度,接下来要做的就是使最长边尽量短。最长边尽量短?很自然地就想到了瓶颈生成树,根据Kruscal算法 阅读全文
posted @ 2018-04-01 11:51 qjs12 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 这是一道单源最短路。 任务一:在跑最短路算法时不经过故障边即可。 任务二:S1直接跑最短路。 S2用到一个关于最短路的性质。当题目需要输出最短路,我们就要在跑最短路时记录更新每个节点的前驱节点,表示走了这条边,那么只要这些边不被破坏,两点间的最短路就不会变。当要求我们求次短路时,可以枚举起点到终点的 阅读全文
posted @ 2018-04-01 11:14 qjs12 阅读(97) 评论(0) 推荐(0) 编辑