水题记录
作者:互联网
2022.5.24
- P4381 [IOI2008] Island:基环树森林,在每个基环树中求直径,环上单调队列。
- UVA10369 Arctic Network:最小生成树。
- P6066 [USACO05JAN]Watchcow S:建一棵生成树 dfs 一遍,对于返祖边单独走。
- P6175 无向图的最小环问题:floyd。
- UVA663 Sorting Slides:二分图最大匹配,删掉每条匹配边之后再跑最大匹配。
- UVA1327 King's Quest:tarjan 缩点,scc 内的都合法。
2022.5.23
- P4819 [中山市选]杀人游戏:tarjan 缩点,先把入度为 0 的选上,然后对于大小为 1 且连出去的点入度都 \(>1\) 的点有一个是可以不选的。
- UVA1537 Picnic Planning:先在根连着的每个连通块中求最小生成树,然后不断换边。
- P3629 [APIO2010]巡逻:\(k=1\) 时,直接连直径,\(k=2\) 时,把第一条直径的边权都改成 \(-1\) 后再求直径。
- P1485 火枪打怪:二分,贪心从右往左打,\(p-(i-j)^2=p-i^2+2ij-j^2\),维护一下后缀和,或者直接三次差分。
2022.5.22
- P4696 [CEOI2011]Matching:将 kmp 的匹配改为判断排名是否相同。
- P4140 奇数国:状压质数,线段树维护乘积和质数是否出现。
- P3306 [SDOI2013] 随机数生成器:推式子,bsgs 求解。
- P5364 [SNOI2017]礼物:矩阵快速幂,\((i+1)^k=\binom k 0 i^k+\binom k 1 i^{k-1}+\cdots +\binom k k i^0\)。
- CF895C Square Subsets:状压质数,将每个数写成二进制,每一位表示该质数出现了奇数/偶数次,求出线性基,答案即为 \(2^{n-|B|}\)。
- P2260 [清华集训2012]模积和:整除分块。
- 51nod1407 与与与与:高位后缀和,容斥。
2022.5.21
- S2OJ1426 空:将相交和包含的情况分开讨论,分别用树状数组维护。
- S2OJ1427 早苗:设 \(f_{i,j}\) 表示前 \(i\) 个数最后有 \(j\) 个不同的方案数,矩阵快速幂优化。
2022.5.21
- CF696D Legen...:AC 自动机上 dp,矩阵快速幂优化。
- P3715 [BJOI2017]魔法咒语:数据分治,一部分暴力,另一部分矩阵快速幂。
- P5537 【XR-3】系统设计:从根到每个点的路径是唯一的,预处理后存哈希,然后查询的时候将前面的补上,二分,单点修改,线段树维护哈希。
2022.5.19
- loj6669 Nauuo and Binary Tree:按深度从小到大处理,因为是二叉树,所以当我们知道两点的 lca 后,就知道在哪棵子树里了,每次找与重链最下面的点的 lca,在重链上跳 \(O(n^2)\)。
- P5666 [CSP-S2019] 树的重心:以重心为根,对每个点考虑删掉有多少边后是子树的重心,树状数组维护。
- CF1678C Tokitsukaze and Strange Inequality:先枚举 \(c\),倒序枚举 \(a\),统计合法 \((b,d)\) 个数。
2022.5.18
- P4886 快递员:点分治,关键在于判断当前点是否最优。
- P1600 [NOIP2016 提高组] 天天爱跑步:将路径拆成两条,一条向上,一条向下,然后根据 \(dep\) 的关系用树状数组维护,单点修改,子树求和。
- P4407 [JSOI2009] 电子字典:建出 trie 树,对每个询问在 trie 树上 dfs,记录是否有过修改。
- 小测。
2022.5.17
- P4884 多少个 1?:bsgs,求 \(10^x\equiv k*9+1\ (\bmod m)\)。
- P3601 签到题:直接求 \([l,r]\) 中的 \(\varphi\) 即可。
- P3868 [TJOI2009] 猜数字:exCRT,求解方程组 \(x\equiv a_i\ (\bmod b_i)\)。
- P1593 因子和:先将 \(a\) 分解质因数,答案即为 \(\prod_{i=1}^k\sum_{j=0}^{c_i}p_i^j\),注意逆元特判一下。
- P3239 [HNOI2015]亚瑟王:考虑每张牌的贡献,设 \(g_i\) 表示第 \(i\) 张牌出的概率,\(f_{i,j}\) 表示最后前 \(i\) 张牌出了 \(j\) 张的概率。
2022.5.16
- CF148D Bag of mice:设 \(f_{i,j}\) 表示还有 \(i\) 个白 \(j\) 个黑时,A 赢的概率,\(g_{i,j}\) 表示 B 赢的概率,dp 即可。
- CF601C Kleofáš and the n-thlon:设 \(f_{i,j}\) 表示前 \(i\) 轮比赛后得分为 \(j\) 的期望人数,滚动数组,前缀和优化。
- P6089 [JSOI2015]非诚勿扰:对于每个女生,接受每个男生的概率就是等比数列求和,然后树状数组维护后缀和。
- P4570 [BJWC2011]元素:按魔力值从大到小插入线形基。
- CF280C Game on Tree:考虑每个点的贡献,只有它是它到根的链上第一个被删的才有 1 的贡献,概率为 \(\frac 1 {dep}\)
- HDU4035 Maze:设 \(f_x\) 为从 \(x\) 走出迷宫的期望步数,都可以写成 \(f_x=af_1+bf_{fa}+c\) 的形式,最后 \(f_1=\frac c {1-a}\)。
2022.5.15
- CF908H New Year and Boolean Bridges:对于 \(and\),一定在一个 SCC 内,对于 \(xor\),一定不在一个 SCC,考虑将两个 SCC 合并,利用 fwt_or 和 \(O(2^n)\) 单点求值。
- CF1392H ZS Shuffles Cards:计算一轮期望抽几次牌,期望多少轮能抽完,乘起来。
- CF696B Puzzles:期望的线性性,对于 \(x\),子树内的一定在后面,\(x\) 到根的链上的一定在前面,其它点的贡献都是 \(\frac 1 2\)。
- P4869 albus就是要第一个出场:设线形基大小为 \(cnt\),那么每个数出现的次数都为 \(2^{n-cnt}\)。
- ARC107 D. Number of Multisets:整数划分套路,记搜。
- AGC048 B. Bracket Score:观察到每对合法的括号位置一定是一奇一偶,先全设为
()
,然后奇数、偶数位置依次取最大的替换。
2022.5.14
- S2OJ347:线段树分治维护直径
- S2OJ348:\(O(n^2)\) dp 显然,设 \(f_i\) 为答案,\(f_i=min(f_{j-1}+|a_j+j-i|)\),将绝对值拆开,对于 \(a_j+j>i\) 的维护后缀 \(f_{j-1}+a_j+j\) 最小值,另一种同理。
- S2OJ349:先对 \(l\) 进行贪心,将放不下的取最优的放到右边,然后再对 \(r\) 贪心。
2022.5.13
- P7690 [CEOI2002] A decorative fence:先 dp 出来长度为 \(i\),第一个数的排名是 \(j\),第一个数为低位或高位 \(k\) 的方案数 \(f_{i,j,k}\),然后每一位从小往大试。
- CF101E Candies and Stones:\(O(n^2)\) dp 显然,但是卡空间,dp 可以滚动,路径可以用 bitset 记录每个位置从哪个方向转移,依然卡,所以分两半处理。
- CF1416D Graph and Queries:时光倒流,建重构树,对条边新建一个点,并把两个端点连在新点下面,这样每个连通块就是所在子树了,线段树维护最大值。
2022.5.12
- CF765F Souvenirs:将询问按右端点排序,从前往后扫,对每个数向前找比它大的数,每次减半,因为其余的都已经在前面更新过了,维护后缀 \(min\)。
- P6596 How Many of Them:\(f_{i,j}\) 表示 \(i\) 个点,\(j\) 条割边的无向连通图个数,\(g_{i,j,k}\) 表示 \(i\) 个点,\(j\) 个连通块,\(k\) 条割边的图个数,\(h_i\) 表示 \(i\) 个点的无向连通图个数,大力 dp。
- UVA1292 Strategic game:树形 dp,或者从叶子向上贪心。
2022.5.11
- UVA323 Jury Compromise:01背包,把差记录在状态里,存和最大是多少。
- P7689 [CEOI2002] Bugs Integrated,Inc.:状压 dp,每个格子 3 个状态,表示后面还要覆盖几个,卡常只枚举有用状态。
2022.5.10
- P1912 [NOI2009] 诗人小G:不难发现决策点单调不降,维护二分队列,也就是每个点决策的区间。
- P2400 秘密文件:区间 dp,枚举循环节大小,哈希判断,自定义一个字符串取 min。
- SP16809 EST - Estimation:区间 dp,不难发现一段区间取中位数最优,好像略微卡常。
2022.5.9
- UVA1640 统计问题 The Counting Problem:数位 dp 板子,记忆化的时候对于同一个数的每个数字不用清空,出现次数是一样的。
- P5694 [NOI2001] 陨石的秘密:\(f(a,b,c,d)\) 表示含有 \(a\) 对
{}
,\(b\) 对[]
,\(c\) 对()
,度数为至多 \(d\) 的方案数,转移时讨论最外面是{}
或[]
或()
。 - P5752 [NOI1999] 棋盘分割:\(f(x1,y1,x2,y2,k)\) 表示矩形 \((x1,y1)-(x2,y2)\) 分成 \(k\) 块的最小方差,记忆化搜索,最后开方。
- UVA1222 Bribing FIPA:树形 dp,难点在读入。
- P4151 [WC2011]最大XOR和路径:先随便找一棵生成树,对于返祖边形成的环,我们发现走过去再走回来贡献只有环上的值,所以将所有环的异或和加入线形基,然后查询 1 到 n 的链最大异或值。
2022.5.8
- CF24D Broken robot:从下往上每一行高斯消元,每个方程只有 2 或 3 个未知数,\(O(n)\) 消元即可。
- P6064 [USACO05JAN]Naptime G:分两次 dp,一次选首位相连,一次首位不相连。
- SP15637 GNYR04H - Mr Youngs Picture Permutations:从小往大放,五维 dp,枚举 5 行各填了几个数,刷表转移。
- SP703 SERVICE - Mobile Service:因为完成第 \(i\) 个请求必有一人到 \(x_i\) 所以只需要记录另外两人的位置。
- P4644 [USACO05DEC]Cleaning Shifts S:以 \(r\) 为第一关键字,\(l\) 为第二关键字排序,线段树维护 dp 值。
- UVA12983 The Battle of Chibi:二维树状数组维护同一长度 dp 值前缀和。
2022.5.5
- BZOJ3569 DZY Loves Chinese II:只写了离线线段树分治做法(
2022.5.4
- S2OJ1424. 染色
2022.5.3
- P3188 [HNOI2007]梦幻岛宝珠:先按 \(b\) 分类以 \(a\) 为体积背包预处理,然后再跑一次背包,考虑从低向高进位。
- AT4434 [ARC103D] Distance Sums:不难发现最大的为叶子,然后父亲的 \(d\) 可以通过子树 \(siz\) 得到,从叶子向上匹配即可。
- P3761 [TJOI2017]城市:暴力枚举删哪条边,处理出两颗子树中每个点到子树内其它点最远是多少。
2022.5.2
- 改考试题
- hdu4630:将询问按左端点排序,从右往左扫,树状数组维护每个位置的答案,对每个 r 求前缀最大值。
- UU146710 染色:\(f_{u,i}\) 表示以 \(u\) 为根的子树中 \(u\) 的连通块大小为 \(i\) 的方案数,转移时颜色分为两种情况(相等和不相等)。
- P3304 [SDOI2013]直径:找到直径,在直径上判断距离是否有其他合法路径。
2022.5.1
- 改考试题
- CF662C Binary Table:将每一列压成一个状态,统计每个状态有几列,枚举每一行是否翻转,每个状态的贡献即为 0/1 较少的次数乘上列数,fwt 异或卷积即可。
- P6097 【模板】子集卷积
- CF914G Sum the Fibonacci:\(s_a,s_b\) 子集卷积,\(s_c\) 桶,\(s_d,s_e\) 异或卷积,最后将三个数组乘上 fib 后并卷积。
2022.3.28
- P3710 方方方的数据结构
- P1502 窗口的星星
- P4211 [LNOI2014]LCA
- P4592 [TJOI2018]异或
- CF1658 C,D1,D2,E
- P2852 [USACO06DEC]Milk Patterns G
2022.3.29
- 改考试题
- P2463 [SDOI2008] Sandy 的卡片
2022.3.30
- P3426 [POI2005]SZA-Template
- P1791 [国家集训队]人员雇佣
- UVA1411 Ants
- P3608 [USACO17JAN]Balanced Photo G
- 小测
- P1646 [国家集训队]happiness
- CF434D Nanami's Power Plant
- loj #115. 无源汇有上下界可行流
2022.3.31
- loj #116. 有源汇有上下界最大流
- loj #117. 有源汇有上下界最小流
- BZOJ2406. 矩阵
- P3759 [TJOI2017]不勤劳的图书管理员
2022.4.1
- P3065 [USACO12DEC]First! G
- P3623 [APIO2008]免费道路
- 51nod 1551 集合交易
- 51nod 1325 两棵树的问题
- CF1660 C,D1,D2,E,F1,F2
2022.4.2
- P5192 Zoj3229 Shoot the Bullet|东方文花帖|【模板】有源汇上下界最大流:模板
- P5236 【模板】静态仙人掌:圆方树,tarjan
- ABC246 D,E,F
2022.4.3
- 考试 T1
- P4630 [APIO2018] Duathlon 铁人两项:圆方树,dp
- CF487E Tourists:圆方树,线段树
- CF1045C Hyperspace Highways:圆方树
2022.4.4
- A.最大兴趣组:数学
- C.分糖果:线段树
- P3355 骑士共存问题:网络流,最小割
- P4113 [HEOI2012]采花:树状数组
2022.4.5
- P3960 [NOIP2017 提高组] 列队:线段树维护每一行和最后一列的信息
- P4234 最小差值生成树:LCT 动态维护树上最小值
- P4332 [SHOI2014]三叉神经树(4.6调对):LCT 维护修改一个点最远能更新到哪
2022.4.6
- P5324 [BJOI2019]删数:推性质,线段树维护最小值及其个数
- P3953 [NOIP2017 提高组] 逛公园:最短路,拓扑,dp
- P2762 太空飞行计划问题:最小割,输出方案时枚举边删掉跑最大流判断
- CF1111E Tree:树剖维护链和,dfs 序上 dp
- CF178F3 Representative Sampling:建 trie 树,在虚树上 dp
- CF440D Berland Federalization:树形 dp,vector 记录转移过程
2022.4.7
- P4037 [JSOI2008]魔兽地图:树形背包,\(f_{i,j,k}\) 表示第i个装备,其中用 \(j\) 个来合成父亲的装备,背包容量为 \(k\) 时所能获得最大收益
- 考试 T1,T2
2022.4.8
- P4180 [BJWC2010]严格次小生成树:最小生成树,倍增维护链上最大值和次大值,枚举换一条边更新答案
- CF1187E Tree Painting:换根 dp
- P6772 [NOI2020] 美食家:矩阵快速幂优化 dp
- 复习 P5290, P2285
- 复习板子
2022.4.9
- 一车板子
- CF1665 A,B,C,D
- ARC138 A,B,C,D
2022.4.10
- P5787 二分图 /【模板】线段树分治
- P6657 【模板】LGV 引理
- P7736 [NOI2021] 路径交点:LGV 引理
- CF167E Wizards and Bets:LGV 引理
- P3527 [POI2011]MET-Meteors:整体二分
2022.4.11
- CF1661 B,C,D
- P2198 杀蚂蚁:dp,不难发现前一部分为放射塔或干扰塔,后一部分全为激光塔,\(f_{i,j}\) 表示前 \(i\) 个塔中有 \(j\) 个放射塔,\(i-j\) 个干扰塔,后面全是激光塔的最大伤害
- CF1153D Serval and Rooted Tree:分讨,若为取 max,则只需一个儿子最大,否则,需要所有儿子最小值最大,所以求出有多少个叶子节点影响答案,放最大的即可
- P2161 [SHOI2009]会场预约:神秘的 set 重载运算符,将相交的线段重载成相等的,然后用 multiset 维护
- P2511 [HAOI2008]木棍分割:先二分求长度,然后 dp 求方案数,前缀和优化 + 滚动数组
- P4591 [TJOI2018]碱基序列:在 SAM 上 dp,滚动数组
- ABC247 G:费用流
2022.4.12
- P3592 [POI2015] MYJ:区间 dp,需要记录决策点
- P2732 [USACO3.3]商店购物 Shopping Offers:六进制状压,完全背包
- CF1310C Au Pont Rouge:dp,倒着枚举转移,可以后缀和优化
- P7515 [省选联考 2021 A 卷] 矩阵游戏:差分约束,优化 spfa
- P7519 [省选联考 2021 A/B 卷] 滚榜:状压 dp,考虑封榜后过题的贡献,差乘上后面数的个数
2022.4.14
- 改考试题
- P8252 [NOI Online 2022 提高组] 讨论:排序后贪心,只需判断交集大小
2022.4.15
- 考试题 T1,T3
- P8253 [NOI Online 2022 提高组] 如何正确地排序:正难则反,二维偏序
标签:每个,水题,记录,线段,维护,2022.5,2022.4,dp 来源: https://www.cnblogs.com/acestar/p/16309576.html