摘要: 题意 给一个字符串,求最长的出现了两次以上的子串长度。 分析 二分长度,枚举起点后记录哈希值出现次数即可。 单次复杂度 \(O(n\log n)\)。 Code #include<bits/stdc++.h> typedef long long ll; typedef unsigned long l 阅读全文
posted @ 2024-12-20 15:34 run-away 阅读(13) 评论(0) 推荐(0)
摘要: 题意 给 \(n\) 个字符串,求最长的在超过 \(\lfloor\frac{n}{2}\rfloor\) 个串里出现的子串,若有多个按字典序排序后输出;若不存在输出 ?。 分析 不理解这么水的题为什么要用后缀数组。 预处理每个串的 Hash 值,二分子串长度,变成判定存不存在的问题。 枚举每个串的 阅读全文
posted @ 2024-12-20 15:33 run-away 阅读(26) 评论(0) 推荐(0)
摘要: 题意 平面上有 \(n\) 个点,给出点的坐标和权值 \(w_i\)。你需要删去一些点,使得对于每个点 \((x,y)\),不存在另三个点 \((x_1,y_1),(x_2,y_2),(x_3,y_3)\) 满足: 对于所有 \(j\in\{1,2,3\}\),\(|x_j−x|,|y_j−y|\l 阅读全文
posted @ 2024-12-20 15:33 run-away 阅读(21) 评论(0) 推荐(0)
摘要: 题意 给 \(n\) 个长度为 \(2\),互不相同,且只由大写字母组成的字符串 \(s\)。 你需要构造出一个字符串数组 \(t\),使得对于每一个 \(s_i\),存在 \(t_j\) 使得 \(s_i\) 为 \(t_j\) 的一个连续子串。并且对于每一个 \(t_j\),它的任意一个连续长度 阅读全文
posted @ 2024-12-20 15:31 run-away 阅读(31) 评论(0) 推荐(0)
摘要: 题意 给定一张无向图,每个点点权为 A 或 B。求对于每一个由 A 和 B 组成的字符串 \(S\),是否在图中存在一条路径满足路径上的点权连在一起为 \(S\),可以重复经过任意一个点和任意一条边。 分析 显然我们需要找到一个环,让路径不断重复在上面走。 考虑一个满足条件的最小环,原图只要存在这种 阅读全文
posted @ 2024-12-20 15:31 run-away 阅读(17) 评论(0) 推荐(0)
摘要: 题意 给 \(n\) 个整数 \(a_i\),可以对它们进行若干次操作:每次可以选择一个整数 \(k\) 和数组中的一些数,花费 \(2^k\) 的代价,给这些数赋值为原值对 \(k\) 取模的值。 求出最小的花费,使得数组 \(a\) 变成数组 \(b\),如果不存在这种方案,输出 \(-1\)。 阅读全文
posted @ 2024-12-20 15:28 run-away 阅读(20) 评论(0) 推荐(0)
摘要: 题意 给定一个 \(n\) 个点 \(m\) 条边的有向图,每个点都有点权,求一条从 \(S\) 到 \(E\) 的路径,使路径经过的点权值之和最大。 可以多次经过一条边或者一个点,但每个点的权值最多计算一次。 分析 和 P3387 很像。 对原图缩点后得到一张 DAG,然后在图上跑类似最短路,实际 阅读全文
posted @ 2024-12-20 15:26 run-away 阅读(12) 评论(0) 推荐(0)
摘要: 题意 给定一个序列 \(a_i\) ,记其前缀和序列为 \(s_i\) ,有 \(q\) 个询问,每次单点修改,询问是否存在一个 \(i\) 满足 \(a_i=s_i−1\)​ ,有多解输出任意一个,无解输出 \(−1\) 。 分析 考虑一个很暴力的解法,每次修改都直接在原数组上改,然后再遍历一遍寻 阅读全文
posted @ 2024-12-20 15:23 run-away 阅读(8) 评论(0) 推荐(0)
摘要: 题意 给定 \(n\),构造一个长度为 \(n\) 的数组,满足任意两个数不互质且不相同,所有数的最大公因数为 \(1\),且每个数最大为 \(10000\)。 分析 这种限制了数的大小,不限制大小和位置关系的构造题有一个套路。 先找出几个最小的满足条件的数,然后找出延申的条件。 对于本题,当 \( 阅读全文
posted @ 2024-12-20 15:22 run-away 阅读(12) 评论(0) 推荐(0)
摘要: 题意 一张未知的 \(n\) 个点,\(m\) 条边的无向连通图。 从 \(1\) 号点开始,每次交互库给出与它相连的点编号,其中选出一个往下走。 在 \(2n\) 次交互内到达 \(n\) 号点。 分析 看到 \(2n\) 的次数,可以想到搜索。 遍历一遍的次数是 \(n\),这一轮可以把图建出来 阅读全文
posted @ 2024-12-20 15:21 run-away 阅读(10) 评论(0) 推荐(0)