随笔分类 - STL--set
摘要:题目 P5610 [Ynoi2013] 大学 分析 似乎是个简单题,容易想到势能分析,每一个点最多被除 \(\log\) 次。 于是问题变成快速找到一个数的所有倍数的位置。 直接对每一个数开一个 \(set\) 存其倍数集合,找到后可以判断是否删掉,也就是区间删除,可以并查集实现。 代码 #incl
阅读全文
摘要:题目 P3320 [SDOI2015]寻宝游戏 分析 虚树。 首先发现题目其实就是让我们求一个虚树,走过其所有顶点一个来回的贡献。 易知这样的路径就是将点 \(dfn\) 序排序后从小到大依次走一遍。 那么答案也很显然是 但是这里直接建虚树不好做,因为有单点修改。 于是考虑用一个 \(set\) 来
阅读全文
摘要:BS4150【NOI2014模拟17】花园(树剖,线段树,差分) 这道题可以差分然后线段树询问来做,同时也可以直接树剖然后在线段树内部用 set 维护。 可知线段树树高严格 \(logn\) ,所以单次修改是 \(O(log^3n)\) ,查询是 \(O(log^2n)\) ,1e5的数据比较卡,可
阅读全文
摘要:P4692 [Ynoi2016] 谁的梦(set) 首先正难则反是必须想到的,我们可以考虑先不管所有的值,把全部值都作为答案统计一边,然后减去贡献即可。 重点在于怎么减去贡献,容易发现,我们这样做其实就是把每个序列分成了很多段,于是我们考虑用 set 维护每一个断点的前驱后继,然后暴力算答案即可。
阅读全文

浙公网安备 33010602011771号