摘要: 扩展 KMP/exKMP(Z 函数) 首先我们求出 \(ne\) 数组。代表 \(b\) 与 \(b\) 的每一个后缀的最长公共前缀长度。 我们设当前要求 \(ne_x\),且 \(k\) 为使得 \(p=k+ne_k-1\) 最大的位置且 \(0\le k<x\),同时 \(p\) 为 \(k+n 阅读全文
posted @ 2024-09-04 20:58 zxh923 阅读(19) 评论(0) 推荐(0)
摘要: Rudolf and the Ticket 算法:枚举。 题意简述:从 \(a\) 数组中和 \(b\) 数组中各选出一个数,使得它们的和不超过 \(k\),求选法数量。 考虑直接枚举每一种可能的搭配即可。 Rudolf and 121 算法:贪心。 题意简述:定义一次操作为,该位置上的数减去 \( 阅读全文
posted @ 2024-09-04 20:58 zxh923 阅读(31) 评论(0) 推荐(0)
摘要: Sakurako's Exam 算法:模拟,分类讨论。 题意简述:给 \(a\) 个数字 \(1\) 和 \(b\) 个数字 \(2\),问能否在每个数字前加上加减号使得原始值为 \(0\)。 考虑 \(1\) 的个数如果是奇数,那么一定不行。否则如果 \(2\) 的个数是偶数,一定可以。当 \(2 阅读全文
posted @ 2024-09-02 11:05 zxh923 阅读(81) 评论(0) 推荐(0)
摘要: 扫描线 经典问题之求矩形面积并,可以使用线段树和扫描线。 比方说我们要对这俩东西求面积并,我们简单分割一下。 然后扫描线就是,从最下面一条绿线向上扫过去,遇到下底边则加上这个矩形,遇到上底边则减去这个矩形。 回到这道题,发现给了我们矩形的两个角,那么上底边和下底边是好求的。 发现这样对图形分层之后, 阅读全文
posted @ 2024-08-26 08:31 zxh923 阅读(21) 评论(0) 推荐(0)
摘要: 给个链接:Big Clique Everywhere。 先说一下团(clique)是什么,其实就是完全图。 考虑什么情况下不满足题意。我们可以先建出补图,下面的东西都在补图中完成。 我们首先给出结论:如果该图中有奇环(不是二分图),则条件不成立,否则成立。 这里证明一下:如果存在奇环,则把点集设为这 阅读全文
posted @ 2024-08-19 10:25 zxh923 阅读(38) 评论(0) 推荐(0)
摘要: Frog 1 我们设 \(f_i\) 表示跳到第 \(i\) 个石头的最小总费用。于是我们可以推出转移方程: \(f_i=\min(f_{i-1}+|h_{i-1}-h_i|,f_{i-2}+|h_{i-2}-h_i|)\)。 当然这个方程在转移的时候不能越界。 于是做一个线性 \(dp\) 即可。 阅读全文
posted @ 2024-08-18 18:38 zxh923 阅读(33) 评论(0) 推荐(0)
摘要: 我们先说一下 \(dp\) 套 \(dp\) 大概是个什么东西。 感性理解一些,你现在有一个动态规划数组 \(g\),然后你的 \(f\) 用 \(g\) 的某种方式作为下标进行转移。 事实上,这个 \(g\) 需要满足单调性,然后相当于你是在一个 \(DAG\) 上做 \(dp\)。为什么要满足单 阅读全文
posted @ 2024-08-09 19:33 zxh923 阅读(56) 评论(0) 推荐(0)
摘要: 鸽 阅读全文
posted @ 2024-08-09 19:29 zxh923 阅读(14) 评论(0) 推荐(0)
摘要: 给个链接:ρars/ey。 我们考虑一个树上背包。 设 \(f_{u,i}\) 表示在 \(u\) 号节点的子树内删除 \(i\) 个点的最小代价。显然有答案为 \(f_{1,siz_1-1}\)。 接下来我们考虑转移。看这一张图: 这里红圈内的东西为当前的 \(siz_u\),绿圈部分为 \(si 阅读全文
posted @ 2024-08-08 19:56 zxh923 阅读(25) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2024-07-31 18:04 zxh923 阅读(18) 评论(1) 推荐(1)