摘要: 思路: 十分经典的treap板子题 阅读全文
posted @ 2018-08-15 20:51 junk_yao 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 思路: 简单的treap+模拟。 但这道题的题面有误导群众的嫌疑,因为题中并没有明确刚进入公司就离开的算不算在离开公司的人中。 当然,对于这道题的数据,题目意思是不算在内。 阅读全文
posted @ 2018-08-15 20:45 junk_yao 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 思路: treap+简单模拟。 我只能说:注意取模!!!! 阅读全文
posted @ 2018-08-15 19:47 junk_yao 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 思路: 使用treap在线存数据,每次取出新读入数据的前驱与后继,与该数据差值较小的就是。(注意若已有同一个数据,特判ans+=0) 阅读全文
posted @ 2018-08-15 19:46 junk_yao 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 思路: 树链剖分+修改版线段树,将所有点后移一位使编号从1到n,先剖分树链维护end[x]为x为根的子树中最后访问的点,再用线段树维护每一区间内已安装的包数。 最后回答问题时注意,安装应采用一段一段累加法,卸载应采用整段累加法。 阅读全文
posted @ 2018-08-15 17:08 junk_yao 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 思路: 第二遍dfs时记录end[x]为在结点序列中以x为根的子树最后访问的节点,写个线段树标记下传即可。与值有关的数据注意long long 阅读全文
posted @ 2018-08-15 12:43 junk_yao 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 思路: 树链剖分模板题 阅读全文
posted @ 2018-08-15 11:31 junk_yao 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 思路: 声明一下,我这道题并没有AC,只得了九十分,最后一个点会超时,暂时没有找到更好的优化方案。 这道题中所求三个点x, y, z的最短路径手推一下就会发现: 令a = LCA(x, y), b = LCA(y, z), c = LCA(x, z) 则路径长度为deep[x]+deep[y]+de 阅读全文
posted @ 2018-08-15 08:10 junk_yao 阅读(275) 评论(0) 推荐(0) 编辑