replace 1707e cf
[Codeforces] CF1551C Interesting Story
CF1551C Interesting Story 题目传送门 题意 给定 \(n\) 个仅由 \(\texttt{a,b,c,d,e}\) 组成的单词 (\(n \le 2\times 10^5\)),从其中选出尽可能多的单词,使得存在某个字母在这些单词中出现的次数比其他所有字母的出现次数之和还要 ......
CF1801F Another n-dimensional chocolate bar
更好的阅读体验 CF1801F Another n-dimensional chocolate bar 高妙的数论分块优化 DP。 第一步设计状态就有很大问题,如果直接设 \(f_{i,j}\) 表示前 \(i\) 个数成绩为 \(j\) 那就死了。这完全没有利用到整除的性质。正确做法是设 \(f_ ......
CF1146B 题解
题目简述 给定一个字符串 \(t\),由一个字符串 \(s\) 和这个字符串去掉所有 a 组成。求字符串 \(s\)。 思路 首先我们分析给定的字符串 \(t\),它由 \(s\) 和 \(s\) 去掉所有 a 形成的字符串 \(s'\) 组成。那么当整个字符串 \(t\) 去掉 a 后,就得到了 ......
CF1068A 题解
其实很简单的一道题。 思维路径 其实题目主要要考虑的就是以下三个条件。 每个人都要送一样多的硬币。 每个硬币都必须是不同的。 所有人送的硬币至少有 \(L\) 个是 Ivan 没有的。 我们一个一个来看。 每个人都要送一样多的硬币。 一共有 \(M\) 个朋友,所以说总共送的硬币的个数为 \(M\) ......
CF940F Machine Learning题解
题目链接:洛谷 或者 CF 不是特别难的题,抽象下题意就是算区间次数出现的次数 mex 和带单点修改。看到范围 \(1e5\) 还带修改,传统的 mex 求法里貌似就莫队类算法好带修,考虑带修莫队。 然而涉及到 mex 问题,你可能不由自主地想到回滚莫队求 mex 只删不加的板子题:P4137 Rm ......
CF940FMachine Learning题解
题目链接:洛谷 或者 CF 不是特别难的题,抽象下题意就是算区间次数出现的次数 mex 和带单点修改。看到范围 \(1e5\) 还带修改,传统的 mex 求法里貌似就莫队类算法好带修,考虑带修莫队。 然而涉及到 mex 问题,你可能不由自主地想到回滚莫队求 mex 只删不加的板子题:P4137 Rm ......
cf goodbye 2023(A-C)
cf goodbye 2023(A-C) A - 2023 算法分析: 多组答案输出一组即可 先累乘,如果不是2023的除数也就是2023的因子就直接no 如果是2023的因子 先输出1 再输出2023/累乘的除数 #include<bits/stdc++.h> using namespace st ......
CF750F Solution
Preface 咕咕咕咕咕咕咕了半年有余。不得不说这题真的会把你调炸!!!!!!11 本题解中的所有 Hints 以白字显示。所以它可能不适合手机观看。 以及,首黑,2022 年 7 月 31 日 15:51。 Solution 算法一 询问次数 $2^h - 2$,适用于 $h \leq 4$。 ......
CF1665E MinimizOR 题解
CF1665E 直接做不是很好下手,考虑找些性质。 有一个比较显然的贪心,就是按位从高到低的考虑,如果当前位至少有 \(2\) 个 \(0\),就可以去掉该位为 \(1\) 的数。但是时间上显然是不行的。 假如没有重复的数,可以发现扫到最后一位时,剩下的数的数量是 \(\log V\) 的,证明省去 ......
CF1870F Lazy Numbers 题解
CF1870F 题意:给一个长度为 \(n\) 的排列,求在其在 \(k\) 进制下按字典序排序后 \(\sum[p_i=i]\) 的值(\(n\le10^{18}\))。 直接做是不好办的,只能在一些数中找到 \(p_i\) 的大小关系。 在手摸的过程中会发现一些长度相等的数之间会插入一些其它长度 ......
P7816/CF1610F「Stoi2029」以父之名 题解
CF1610F P7816 *3000 令 \(w_u\) 表示与 \(u\) 直接相连的边的权值和。显然当 \(2\mid w_u\) 时,这个节点是无法满足条件的,因为每次调整只能对 \(\mid d^+(u)-d^-(u)\mid\) 的值造成偶数的影响。 这时候肯定会猜答案就是 \(\sum ......
CF1045G AI robots题解
题目链接:洛谷 或者 CF 本题考虑转化为 cdq 分治模型 对于 cdq 分治来说,只需要考虑左边对右边的影响,那我们要考虑该怎样设置第一维度的左右对象。很显而易见的是抛开 \(q\) 限制而言,我们着眼于,如何让双方互相看到的严格条件转化为只需要关注单体看见。考虑什么情况下只需要一方看到对方,对 ......
CF1270G Subset with Zero Sum
G. Subset with Zero Sum 很妙。 一开始冲着背包去想的,显然不行。 考虑他条件给的这个 \(i − n \le a_i \le i − 1\) 化简一下得到 \[1 \le i - a_i \le n \]题目要去求 \[\sum \limits_{i \in S} a_i = ......
CF817F MEX Queries
题意 一个集合,初始为空。 请你维护以下 \(3\) 种操作。 把 \([l, r]\) 中在集合中没有出现过的数添加到集合中。 把 \([l, r]\) 中在集合中出现过的数从集合中删掉。 把 \([l, r]\) 中在集合中没有出现过的数添加到集合中,并把 \([l, r]\) 中在集合中出现过 ......
CF1270G Subset with Zero Sum
题目链接:洛谷 或者 CF 比较朴素的题,首先观察题目条件: \[ i-n \le a_i \le i-1 \Rightarrow 1 \le i-a_i \le n \text{,所以易知 } i-a_i \text{ 必定是某一点} \]考虑构造题目所说 \[\sum_{i=x_1}^{x_{t ......
CF1392H ZS Shuffles Cards 题解
题目链接 点击打开链接 题目解法 很牛逼的概率题,参考了题解区 定义取到鬼牌,重新洗牌,为一轮 则 \(ans=E(\)轮数\()\times E(\)这一轮取到鬼牌的期望步数\()\),轮数为在 \(S=\{1,...,n\}\) 之前取到鬼牌的次数 先计算 \(E(\)这一轮取到鬼牌的期望步数\ ......
CF1905E One-X
map<ll, pll> mp; pll calc(ll n) { if(mp.find(n) != mp.end()) return mp[n]; auto [lk, lb] = calc((n + 1) / 2); auto [rk, rb] = calc(n / 2); ll t = (q_p ......
CF1814F
挺巧妙的题。 首先可以根据每个点出现时间知道每条边出现时间。然后就是一个 SGT 分治了……吗?发现如果对于每个时刻记录此时有哪些点和 \(1\) 联通,每次都要 \(O(n)\) 的时间扫一遍,这样肯定是不行的。 那么怎么办呢?于是考虑在并查集合并一次的时候判断合并中的两个点中的一个是否与 \(1 ......
CF295B Greg and Graph 题解 floyd性质题
题目链接:https://codeforces.com/problemset/problem/295/B 题目描述可参见 洛谷 解题思路完全来自 aiiYuu巨佬的博客 一道很好地利用了 floyd 算法性质的题目。 floyd算法 示例程序: #include <bits/stdc++.h> us ......
[CF1067D] computer game
题目链接 容易发现,当某一次游戏成功后,一定是一直选择 \(p_ib_i\) 最大的游戏玩。设 \(s=\max\limits_{i=1}^n p_ib_i\) 定义 \(dp_i\) 为还有 \(i\) 次操作时,最大的期望。 那么 \(dp_i=\max\limits_{j=1}^n(1-p_j ......
CF1905F Field Should Not Be Empty题解
题目链接:https://codeforces.com/contest/1905/problem/F 题意简述 对一个排列 \(p\),一个下标 \(x\) 被称作“好下标”当且仅当 \(\forall y < x\) 满足 \(p_y < p_x\),且 \(\forall y> x\) 满足 \ ......
[CF594D] REQ 题解
[CF594D] REQ 题解 思路 用欧拉函数的公式来求解,可以发现,对于每一个质因数都只会做一次贡献,然后是区间查询,联想到 HH的项链 一题,考虑离线询问,按右端点排序,在树状数组里面维护最靠右的质因数的位置做贡献,然后区间积一下就有了。 注意质因数分解暴力做根号应该会爆,可以筛质数之后对质数 ......
CF676C 题解
使用尺取法(双指针法)。 由于字符种类只有 \(2\) 种,答案一定是全 a 或全 b。 情况 \(1\):全 a 快指针循环移动,并统计字符 b 的数量 \(cntb\),直到 \(cntb\) 即将超过 \(k\)。 情况 \(2\):全 b 同上。 答案即为两种情况取到的最大值。 AC cod ......
CF1100F Ivan and Burgers
CF1100F Ivan and Burgers Problem 给定一个长为 \(n\) 的序列,\(Q\) 查询区间异或最大值。 \(1 \le n, Q \le 5 \times 10^{5}\)。 Solution 1 幸运数字的序列版本,但数据范围更大了,三只老哥很难冲得过去。 思考线段树 ......
CF521E Cycling City
是一个比较无脑的算法 首先建点双,对每个点双考虑,发现点双无解当且仅当是一个环,耳分解一下非常好证明 然后只需要找到两个端点满足有三条路径即可,发现 \(\text{K4}\) 一定有解,于是缩一下广义串并联图,把缩剩下的两个点拿出来当端点跑三遍 bfs 就做完了,感觉连通性相关的图论题目每次就这些 ......
CF1886C Decreasing String 题解
Problem - C - Codeforces Decreasing String - 洛谷 p.s. 本题提到的所有 \(s_i\) 的 \(i\) 均表示 \(s\) 字符串的下标,而不是第 \(i\) 个字符串。因为我懒不想改了 每次遇到这种题都想不到最好的解决方法,我是不是应该把所有比赛的 ......
[CF1527B1] Palindrome Game (hard version)
题意略。 手玩一下,发现 polybeta Bob 赢面不大。 本来想模拟的。考虑结论题。 由于计入代价的操作只有 \(s_i=0\to1\) 一个,可以统计 \(0\) 的个数为 \(cnt\)。 由于这题和 Ezy Version 的唯一区别就是初始字符串是否为回文,很自然地想到对于初始串是否回 ......
CF763E Timofey and our friends animals题解
题目链接:CF 或者 洛谷 简单来说就是求 \([l,r]\) 这些点都存在的情况下,连通块的数量,看到七秒时限,而且每个点相连的边数很少,可以想到离线下来使用莫队类的算法解决 连通块问题,一般可以考虑使用并查集解决。对于并查集来说,它的增加是非常简单的,但删除是困难的,可持久化并查集时空常数都较大 ......
CF1656D K-good Solution
题目传送门 做法 奇偶性判定好题。 \(Case1:\) \(n\)为奇数 很显然,\(n\)为奇数时一定可以拆分成两个数\(x\)和\(y\),且\(x\)为奇数,\(y\)为偶数,发现\(x \mod 2=1,y\mod 2=0\),\(k\)也刚好位\(2\),所以当\(n\)为奇数时就直接输 ......
CF1638E Colorful Operations
题意 给定一个长度为 \(n\) 的数组,初始每个数的颜色为 \(1\),值为 \(0\)。 维护以下操作: 将 \(l \to r\) 的颜色替换成 \(c\)。 将数组中颜色为 \(c\) 的元素的值加上 \(x\)。 输出 \(a_i\) 的值。 \(n, q \le 10 ^ 6\) Sol ......