上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 22 下一页
摘要: Description 给你一个串 \(s\),每次可以花费 \(1\) 的代价删去一个子串,要求子串的每一位为同一个字符。 求删去整个串的最小代价。 \(1\leq|s|\leq 500\) Solution 居然不会了! 发现状态的转移不止与当前区间的端点有关,而且和中间颜色相同的也有关。所以必 阅读全文
posted @ 2021-09-06 22:03 Kreap 阅读(21) 评论(0) 推荐(0) 编辑
摘要: Description 数轴上有 \(n\) 个区间,以及 \(m\) 个点。共有 \(2^n-1\) 种选区间的集合。问有多少种集合,使得集合里的区间的交包含至少一个给定点。 Solution 如果单独考虑每个点来计数的话,会算重。那就要考虑建立一种映射关系。我们考虑将区间按给定点来离散化(注意清 阅读全文
posted @ 2021-09-06 10:06 Kreap 阅读(24) 评论(0) 推荐(0) 编辑
摘要: Description 给定一个图,经过一个点的代价是进入和离开这个点的两条边的边权的较大值。起点的代价是离开起点的边的边权,终点的代价是进入终点的边的边权。求 \(1\) 到 \(n\) 的最短路。 Solution 如果直接在这个图上跑的话,需要记录一下是从哪条边转移过来的,不太行。换一种思路, 阅读全文
posted @ 2021-08-31 11:29 Kreap 阅读(38) 评论(0) 推荐(0) 编辑
摘要: Description 初始一个串 \(S\),有两种操作。 在某个位置增/删一个字符。 询问两个后缀的最长公共前缀。 Solution 一开始以为是什么高级东西…… SAM 并不能处理在中间插入字符的情况,所以应该直接排除了。观察到“最长”这个东西是有单调性的,所以可以考虑二分,然后就转换成两个子 阅读全文
posted @ 2021-08-31 11:09 Kreap 阅读(39) 评论(0) 推荐(0) 编辑
摘要: Description 给定一个序列 \(a_i\),\(i\in[0,n)\)。两个人 \(A\) 和 \(B\) 玩游戏,每次 \(A\) 可以生成一个序列 \(b_i\),然后 \(B\) 选择一个数 \(x\),使 \(a_i\) 加上 \(b_{(i+x)\bmod n}\)。如果所有的 阅读全文
posted @ 2021-08-31 10:16 Kreap 阅读(31) 评论(0) 推荐(0) 编辑
摘要: Description 给定一个排列,问存不存在这样的子序列,使得其元素异或和是零,且按顺序拼接起来成为一个大整数后是一个给定质数 \(p\) 的倍数。求出使得最后拼接出的大整数最小的方案。 数据范围: \(n,p\leq 10^5\) Solution 将几个数拼接起来,可以直接将它看成是一个模 阅读全文
posted @ 2021-08-29 07:39 Kreap 阅读(32) 评论(0) 推荐(0) 编辑
摘要: Solution 如果没有“免费”这个操作,那么答案一定是最小生成树上 \(1\) 到 \(n\) 的路径。加了这个操作后,我一开始想的是直接找这条路上大的边,然后删掉。后面才发现这样是不对的。类比如果是求和的话,不能直接删掉最短路径树上的边,在这里也不能直接删最小生成树上的边。 代价是权值的最大值 阅读全文
posted @ 2021-08-27 09:26 Kreap 阅读(33) 评论(0) 推荐(0) 编辑
摘要: Description 给定 \(\{a_n\}\),求 \(\max\{lcm(a_i,a_j)\}\) Solution 一个显然的想法是枚举 gcd,然后求去掉 gcd 后互质的两个数的乘积最大值。一个显然的性质是如果 \(x\) 和 \(y\) 互质,那么对任意 \(y'\leq y\) 都 阅读全文
posted @ 2021-08-22 11:57 Kreap 阅读(26) 评论(0) 推荐(0) 编辑
摘要: Description 每个物品有 \(a_i\) 和 \(b_i\) 两个权,\(Q\) 次询问,给定 \(c\) 和 \(d\),每次询问区间 \([l,r]\),求 \(\sum_{i=l}^{r} [a_i\oplus c\leq \min(b_i,d)]\),\(\oplus\) 表示异或 阅读全文
posted @ 2021-08-22 08:43 Kreap 阅读(43) 评论(0) 推荐(0) 编辑
摘要: Description \(n\) 种物品,每种有 \(a_i\) 个,能够 \(C_i\),买入 \(D_i\) 卖出。由于一些原因,买 \(i\) 实际上会弹出 \(f_i\)。 如果第 \(i\) 种物品被买完了,就不能购买(得不到 \(f_i\));即使给了钱买了 \(i\),但是 \(f_ 阅读全文
posted @ 2021-08-20 20:44 Kreap 阅读(48) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 22 下一页