摘要: P9753 [CSP-S 2023] 消消乐 这题想到了 50pts,想不出来怎么优化了。 50pts:考虑枚举子串左端点,模拟操作过程,直接用栈模拟,遇到相同的则删去,如果某个时刻栈为空,那么合法子串数加一。 考场上只想到为空的时候可消除,下面的性质才是关键的。因为我们枚举左端点,每次只判断了 \ 阅读全文
posted @ 2024-04-27 09:03 Fire_Raku 阅读(1) 评论(0) 推荐(0) 编辑
摘要: CF118E Bertown roads 结论+tarjan/dfs tree 首先图中有桥肯定无解,那么考虑不存在桥的时候怎么构造一种解。 现在图是个边双,有什么算法?tarjan。从 tarjan 入手,遍历过程将图分为了树边和返祖边(无向图中不存在横叉边和前向边,可以模拟 dfs 过程理解), 阅读全文
posted @ 2024-04-27 08:53 Fire_Raku 阅读(1) 评论(0) 推荐(0) 编辑
摘要: P3225 [HNOI2012] 矿场搭建 点双缩点+分讨结论 我们可以看看这样的点满足什么条件:去掉这个点以及所连出的边,图不连通。显然是割点,那么考虑将图用点双缩成树,发掘性质。 缩完是个森林,考虑度数为 \(0\)、\(1\)、\(2\) 分别讨论。很明显的,树上的叶子结点,即度数为 \(1\ 阅读全文
posted @ 2024-04-27 00:18 Fire_Raku 阅读(1) 评论(0) 推荐(0) 编辑
摘要: CF1197E Culture Code 无后效性+线性dp+线段树优化 看到求最值以及方案数,考虑 dp。当前的顺序显然是无从下手的,因为套娃的顺序是乱的,考虑能否找到偏序满足无后效性。可以按照 \(in_i\) 从大到小排序,那么存在极大区间 \([1,j]\in[1,i)\), \(in_{j 阅读全文
posted @ 2024-04-26 23:59 Fire_Raku 阅读(1) 评论(0) 推荐(0) 编辑
摘要: P7961 [NOIP2021] 数列 这题想了一半,后面有点不敢想结果直接看题解了。 思考后发现,对于 \(a_i\le x\),也就是二进制中第 \(x\) 位前的部分,它们都可能会影响到二进制中第 \(x\) 位后的进位,而 \(a_i>x\) 的部分是不会影响到 \(x\) 位前的进位的。 阅读全文
posted @ 2024-04-24 21:06 Fire_Raku 阅读(1) 评论(0) 推荐(0) 编辑
摘要: P8866 [NOIP2022] 喵了个喵 构造模拟题,思路很简洁,但是代码不好写。 首先看到数据范围,发现 \(k\) 的数据范围很特殊,种类少一种就是部分分,所以 \(k\) 一定是关键的,先思考 \(k=2n-2\) 的情况。 \(k=2n-2\) 观察两种操作,对于即将进入的牌 \(x\), 阅读全文
posted @ 2024-04-24 21:05 Fire_Raku 阅读(1) 评论(0) 推荐(0) 编辑
摘要: P7114 [NOIP2020] 字符串匹配 看到循环部分 \(AB\),自然想要去枚举它,并且用哈希。开始想到的是倍增+hash求出最长循环的右端点,复杂度是 \(O(n\log n)\),结果不好写,没写出来。 我们先思考找到右端点怎么计算贡献。最朴素的,我们再枚举前缀 \(ABAB\cdots 阅读全文
posted @ 2024-04-24 21:04 Fire_Raku 阅读(1) 评论(0) 推荐(0) 编辑
摘要: P3953 [NOIP2017 提高组] 逛公园 求有向图中 \(1\) 到 \(n\) 的路径中长度小于等于 \(dis(1,n)+k\) 的方案数。\(dis(1,n)\) 表示最短路。\(k\le 50\)。 部分分 \(k=0\),直接最短路计数即可。 我们发现有向图中存在后效性,不好动态规 阅读全文
posted @ 2024-04-24 21:03 Fire_Raku 阅读(1) 评论(0) 推荐(0) 编辑
摘要: P7914 [CSP-S 2021] 括号序列 看起来非常复杂的括号题,看到数据范围,大概确定是区间 dp,所以我们考虑怎么定义状态。 条件非常多,所以二维的状态肯定表示不了,考虑多加一维来定义不同的状态。 \(dp_{i,j,0}\):区间形式是 ***...*** 的方案数。 \(dp_{i,j 阅读全文
posted @ 2024-04-24 21:02 Fire_Raku 阅读(1) 评论(0) 推荐(0) 编辑
摘要: [AGC001F] Wide Swap trick+拓扑排序+线段树好题 看到题目的操作,显然是复杂、不好的。为什么?交换操作是无序的,我们不知道交换后对各个部分的影响,难以分析。这时候我们注意到 \(|P_i-P_j|=1\) 的性质非常特殊,考虑从这里入手。 如果以值域为系,那么会发现排列中的每 阅读全文
posted @ 2024-04-24 20:59 Fire_Raku 阅读(1) 评论(0) 推荐(0) 编辑
//雪花飘落效果