随笔分类 - 二分
摘要:题目链接 P11843 [USACO25FEB] The Best Subsequence G 题意简述 有一个长度为 的初始全为 的数列,现在有 次将 区间内的所有数字都取反的操作。 有 次询问,每次询问形如 l r x,你
阅读全文
摘要:题目链接 P11830 [省选联考 2025] 幸运数字 解题思路 40pts 考虑直接暴力 check 每个数字 是否能被取到。 有以下贪心方式: 如果根本不可能取到至少一个数字 ,则 不能被取到。 若对于一个可取数字区间有
阅读全文
摘要:更不好的阅读体验 题目链接 CF2069D(*1900) Palindrome Shuffle(luogu) CF2069D(*1900) Palindrome Shuffle(codeforces) 解题思路 本文 代表 ,即字符集大小。 这题是史,大家一起吃。 首先根据题
阅读全文
摘要:怎么没人写好写的 ST 表呢。 题目链接 CF601B Lipshitz Sequence (luogu) CF601B Lipshitz Sequence (codeforces) 解题思路 其实一眼可以发现选相邻的是最优的。 证明: 若这个区间中的数字为 ,此时若选择 \(
阅读全文
摘要:哎哎,太毒瘤,哎哎,太深刻。 题目链接 AT_abc140_e [ABC140E] Second Sum 解题思路 考虑有以下基本性质: 在 的数列上,包含 点的区间(端点为整数)个数为 \(i \times (n - i + 1
阅读全文
摘要:题目链接 CF1370F2 The Hidden Pair (Hard Version) (*2700) 题目描述 真的很难吗? 我们首先考虑找出第一个特殊点。 我们可以先求出这两个点路径中的任意一个点。发现询问 就使我们需要的询问、 接下来以这个路径中的一个点为根来确定每
阅读全文
摘要:题目链接 P11267 【MX-S5-T1】王国边缘 解题思路 先考虑对于 中的每一个点往后跳 次会跳的距离。 那么为什么只用处理 这些点而不去处理其余的点往后跳的距离呢? 我们可以发现,由于字符串是无线循环的,所以对于位置模 \(n\
阅读全文
摘要:这题 *2400 纯唐吧,感觉 *1800 差不多。 题目链接 CF2036G Library of Magic(*2400) 解题思路 注: 表示异或运算。 首先我们想一个通解,就是先二分出第一个数和第三个数,然后第二个数就是所有数的异或和异或上这两个数,操作次数为 \(2 \
阅读全文
摘要:怎么没有二分的题解啊,写一篇。 题目链接 CF1301C Ayoub's function 解题思路 发现我们可以将问题转化成将 个 分成 份,设第 份的数字之和为 ,则这样的分配方案的贡献为 \(\frac{n \times
阅读全文
摘要:简单题。 题目链接 CF862D Mahmoud and Ehab and the binary string 解题思路 首先我们可以发现,字符串的第一个字母不是 就是 ,因此我们可以容易花费 次询问来找到数字 或数字 所在的一个位置。 然后
阅读全文
摘要:题目链接 CF1360H 解题思路 发现你可以十分高效的统计小于等于 的合法的数字数量。 并且你可以发现,当 递增时,合法的数字数量是不递减的,因此合法的数字数量是具有单调性的。 于是可以进行二分答案。 那么如何进行 check 呢?我们先将不可选用的二进制数字给转化成数字,
阅读全文
摘要:题目链接 CF1486C1 CF1486C2 解题思路 提供一个比较显然的思路。 我们发现我们可以先求出整体的最小值,然后设整体最小值所在的位置为 ,则我们可以通过 次询问 来求出最大值的位置是在 还是在 。然后
阅读全文
摘要:题目链接 CF1996F 解题思路 考虑二分。 我们发现,我们肯定是拿此时的价值最大的物品。 因此,当所有的物品再拿一次后会小于等于 时拿走的物品数量,在 缩小时,答案是单调不减的。 因此,我们可以令二分当所有的物品再拿一次后会小于等于 时的物品总价值是多少,注意
阅读全文
摘要:题目链接 CF1454F Array Partition 解题思路 我们发现显然第一个和第三个区间的值区间随着长度的增大而增大。 于是我们就可以枚举第一个区间的右端点位置,然后现在问题就转化成了找到一个断点来确定第二,三个区间的长度,由于前文提到的第三个区间的值区间随着长度的增大而增大,于是我们就可
阅读全文
摘要:题目链接 AT_abc360_d (luogu) AT_abc360_d (atcoder) 解题思路 一个性质是,往左边走的蚂蚁无论怎么样都追不到左边的蚂蚁,而往右边走的蚂蚁无论怎么样都追不上右边的蚂蚁。 因此我们考虑将蚂蚁分为往左往右走的两堆。 发现对于每个蚂蚁都能走过一段区间,因此直接二分将右
阅读全文
摘要:代码训练 2024.6.16. 二分并查集板子。 链接 直接上代码。 点击查看代码 /* Tips: 你数组开小了吗? 你MLE了吗? 你觉得是贪心,是不是该想想dp? 一个小时没调出来,是不是该考虑换题? 打 cf 不要用 umap!!! 记住,rating 是身外之物。 该冲正解时冲正解! Pr
阅读全文
摘要:代码恢复训练 2024.6.13. 题目链接 CF1985F (CF) CF1985F (luogu) 解题思路 由于一个回合可以用所有无冷却的技能,因此我们对于技能肯定是能用就用的。 进而推出答案具有单调性。 直接二分答案即可,注意二分边界问题,这里我开了 __int128 来避免这个问题。 参考
阅读全文
摘要:代码恢复训练 2024.6.7. 题目链接 CF1979C (codeforces) CF1979C (luogu) 解题思路 我们发现,如果答案序列的和小于等于 时是合法的,那么容易得出答案序列的和小于等于 时也是合法的。 因此我们发现答案序列的和的合法性是具有单调
阅读全文
摘要:题目链接 CF1759F All Possible Digits(luogu) CF1759F All Possible Digits(codeforces) 题意简述 有一个长度为 的 进制数,你需要求出至少通过几次操作才可以让 这 \(p
阅读全文
该文被密码保护。