数学+分类讨论+构造:1102T3
数学+分类讨论+构造:1102T3 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/134191475 http://cplusoj.com/d/senior/p/SS231102C 首先可以通过枚举逆序对点的贡献推出无解情况为 n mod 4>1n \bmod 4 > 1nmod4>1 然后构造可以按 n mod 3n\bmod 3nmod3 进行分类 12345678910111213141516171819202122232425262...
树上贪心类——子树之和 / 新贡献:1031T1
树上贪心类——子树之和 / 新贡献:1031T1 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/134170718 http://cplusoj.com/d/senior/p/SS231031A 可以发现从上面打下来,我们有两种对策: 直接引一条上来 下面每条分别对付 我们直接按照这种方法维护一个类似树形dp的东西就行了 123456789101112131415161718192021222324252627282930313233343536...
边界缩小维护最值——倒序枚举/中部切开:1101T2
边界缩小维护最值——倒序枚举/中部切开:1101T2 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/134167852 http://cplusoj.com/d/senior/p/CPNOIPB 发现维护边界缩小类最值很难做,有两种常见方法: 倒序进行,边界就变成扩大了 在 midmidmid 处切开,复杂度可以均摊
平面图欧拉公式应用:1026T2
平面图欧拉公式应用:1026T2 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/134063018 http://cplusoj.com/d/senior/p/SS231026B 考虑如何维护黑色连通块恰为1这个条件。我们可以直接运用平面图的欧拉公式。 对于“空腔”这个条件,我们可以先预处理,然后通过two-pointers+桶来实现 12345678910111213141516171819202122232425262728293031323334353...
平面图欧拉公式
平面图欧拉公式 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/134062975 V−E+P=B+1V-E+P=B+1V−E+P=B+1 VVV :点数 EEE :边数 PPP :面数(含外面) BBB :连通块数量 通过这个我们可以处理网格图中的连通块数量问题 上图中有7个点,8条边,3个面(包括外面),所以有 7-8+3=1+1 个连通块
拆贡献+统计非法可能不统计非法贡献:ARC150D
拆贡献+统计非法可能不统计非法贡献:ARC150D 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/134047357 https://atcoder.jp/contests/arc150/tasks/arc150_d 先拆贡献成每个点,然后就只需要考虑这条链上的情况了 我们现在要求的是: 在所有点选完之前,最后一个点被选了多少次 我们发现这很难做,但有个性质: 在所有点选完前,最后一个点始终是坏点 因此我们可以钦定好点也可以选,只是不计算其贡献 ...
SA+ST表维护height+单调队列维护:CF1073G
SA+ST表维护height+单调队列维护:CF1073G 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/134043286 https://www.luogu.com.cn/problem/CF1073G lcp相关的,先跑个sa,然后height建个ST表 现在考虑询问,我们按A和B按 rkrkrk 排序。现在考虑B->A,反过来同理。 我们可以用单调队列维护,满足height是单增的。因为越往前lcp必然越短。同时要维护有多少个。然后对于当前后缀...
后缀数组SA
后缀数组SA 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/134042245 https://uoj.ac/problem/35 通过倍增实现排序 类似基数排序,先排后面,再排前面 排的过程可以拿桶排优化 设 h(i)=lcp(sa[rk[i]−1],i)h(i)=lcp(sa[rk[i]-1],i)h(i)=lcp(sa[rk[i]−1],i) 有 h(i)≥h(i−1)−1h(i)\ge h(i-1)-1h(i)≥h(i−1)−1 123...
树上形态改变统计贡献:1025T4
树上形态改变统计贡献:1025T4 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/134039125 http://cplusoj.com/d/senior/p/SS231025D 答案为 ∑w[x]−w[son[x]]\sum w[x]-w[son[x]]∑w[x]−w[son[x]] , xxx 非儿子 要维护断边,LCT固然可以,但不一定需要 发现如果发生了变化,只会由重儿子变成次重儿子 所以我们首先要维护次重儿子 同时我们拿树状数组维护其所有祖先的...
排列置换环上构造:1025T3
排列置换环上构造:1025T3 本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/134035399 http://cplusoj.com/d/senior/p/SS231025C 排列构造的新知识:上置换环! 我们发现朴素做法是 n2n^2n2 级别的,但数据范围希望我们是 n22\frac {n^2}2 2n2 级别的。我们发现我们暴力复制序列显得非常蠢,因为很多序列前后我们其实可以考虑合并。 至于怎么合并?我们直接维护指针。然后我们现在要“运”东西到相应...













