摘要: 本人被\(KMP\)已经折磨许久。五战KMP。方知之前理解确实浅。故写此篇。 这是之前那篇,实在是太浅,不过对代码做了注释。https://www.acwing.com/solution/content/131255/ 本篇重点说明\(KMP\)的原理,而非过程。过程相信其他博客已经写的十分完善了。 阅读全文
posted @ 2024-05-04 19:43 琴忆庭 阅读(5) 评论(0) 推荐(0) 编辑
摘要: https://www.acwing.com/problem/content/1014/ 最近在复习这块。突然感觉这题也没那么难想。 和y总讲的略有出入,结果一致,但思路更自然。 联系到我们的序列切割模型,把航线看成切割。我们第一步很容易得出状态 f[i][j]表示从(值域)1~i, 1~j中选,且 阅读全文
posted @ 2024-04-25 11:45 琴忆庭 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 题目 https://www.luogu.com.cn/problem/P7077 这题给我好搞。不过思路精巧。 \(Solution\) 首先我们考虑一个比较简单的问题。 称函数1是加法,函数2是乘法,函数3是调用。 首先,要转换思路。原先暴力模拟,考虑函数顺序,\(O(Qn)\), 必炸。我们考 阅读全文
posted @ 2024-03-02 16:26 琴忆庭 阅读(43) 评论(0) 推荐(0) 编辑
摘要: \(Prim:\) 证明:(人话): 在这个图中 假设当前距离集合最短边是\(u->v\), 那么假设它不在任意一棵最小生成树中 那么 在最小生成树中,\(u -> v\)必然存在其他边相连,并且在这之中,一定存在从集合到外的一条边(横跨切割的边)\(x->y\),(因为u,v不在一个集合中,如果不 阅读全文
posted @ 2024-02-23 14:01 琴忆庭 阅读(22) 评论(0) 推荐(0) 编辑
摘要: 逻辑理解: 把\(x_i <= x_j + c\) 看成\(j -> i\)花费\(w_c\) 的边(边的定义) 那么此时在满足所有限制的情况下求最短路就能满足此性质。 (满足所有限制就是从超级原点出发 遍历所有边) 求一遍最短路。 如何判断无解呢? 有负环就等价于无解。 有负环就无解。无解一定是\ 阅读全文
posted @ 2024-02-20 15:10 琴忆庭 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 刚考完试。重返oi! 这次挂掉80pts 20pts挂在T1,未考虑读的时候数字占多个字符, 60pts挂在多测未清空上。 T1 https://www.luogu.com.cn/problem/P1981 经典表达式求值。我这里采用了一种比较奇特的方法。我以每个加号为分界线。当我遍历到其中一个加号 阅读全文
posted @ 2024-01-24 15:33 琴忆庭 阅读(11) 评论(0) 推荐(0) 编辑
摘要: # T1 https://www.luogu.com.cn/problem/P2340 ## solution **01背包。** 我们可以做出如下分析: ![image](https://img2023.cnblogs.com/blog/3203093/202308/3203093-2023080 阅读全文
posted @ 2023-08-02 15:42 琴忆庭 阅读(60) 评论(0) 推荐(0) 编辑
摘要: ### 题目链接:https://www.acwing.com/problem/content/897/ ## 讲解 动态规划问题具有三个特质: * 子问题重叠: 即子问题是相互之间依赖的 这个子问题在之后可能被反复使用 (此条件并非必要条件 但失去它也就没有优化作用了) * 最优化原理: 此问题可 阅读全文
posted @ 2023-07-05 11:32 琴忆庭 阅读(61) 评论(0) 推荐(0) 编辑
摘要: ## Solution https://www.acwing.com/problem/content/155/ ##### **二分图,染色,贪心 O(n^2)** 性质 > 当且仅当i a[i]>a[k] 那么j和j之后的元素一定在i之后出栈,所以当序列遍历到j时,一定可以让i出栈,进而j就可以进 阅读全文
posted @ 2023-06-23 18:38 琴忆庭 阅读(35) 评论(0) 推荐(0) 编辑