tripartite complete 1228d cf

CF1875B Jellyfish and Game

思路 题意大概是两人都有一组数,奇数轮,第一个人可以选择和第二个人交换一个数字也可以不换,偶数轮,第二个人可以选择和第一个人交换一个数字也可以不换。 首先可以猜测,我们每次都应该选择交换对方的最大值和自己的最小值,如果自己的最小值都比对方大的话就不交换。应该比较好想,这里感性证明一下。 如果用的不是 ......
Jellyfish 1875B 1875 Game and

CF1875D Jellyfish and Mex

思路 看到 \(n\) 的范围只有 \(5000\),并且 \(\sum n\) 的范围也是 \(5000\),所以可以考虑 \(n^2\) 的做法。 每次操作肯定都是一次性删完某个数字,如果删除某个数字删一半又去删别的数字,答案肯定会变大。 所以我们可以考虑统计所有数字的数量,记为 \(num_i ......
Jellyfish 1875D 1875 and Mex

CF1875C Jellyfish and Green Apple

思路 首先我们可以考虑把能分的都先分了,再选择去切剩下的苹果。 那么我们只需要考虑苹果数量少于人数的情况,每个人能分的苹果都必然少于目前的单个苹果,所以每个苹果都必须切一刀,那么答案数就会增加当前的数量,再把能分的都分了,重复这一过程,直到分完为止。这样去切一定是最优的。 那么,什么时候无解呢? 因 ......
Jellyfish 1875C Apple Green 1875

题解 CF1875D【Jellyfish and Mex】

显然,除非 \(\operatorname{mex}a=0\),否则不会删除 \(>\operatorname{mex}a\) 的数。而 \(\operatorname{mex}a=0\) 时不对答案产生贡献,因此任意时刻我们都可以忽略 \(a\) 中 \(>\operatorname{mex}a\ ......
题解 Jellyfish 1875D 1875 and

[CF1654F] Minimal String Xoration

Minimal String Xoration 有点智慧但不是特别智慧反正是我达不到的智慧。 打表可以看出长度为 \(2^x\) 的 \(i\oplus k\) 出现次数为 \(2^{n-k}\)。 进一步发现,设 \(f(k,x)\) 当前选取 k 时,数列前 \(2^k\) 的下标。 则 \(f ......
Xoration Minimal String 1654F 1654

CF1575I Illusions of the Desert

prologue 还是太菜了,这个 154 行的树剖20min才敲完。 analysis 首先,处理这个给到我们的这个式子。 \[\max(\mid a _ u + a _ v \mid, \mid a _ u - a _ v \mid) \]我们可以分类讨论: \(a > 0, b > 0\): ......
Illusions Desert 1575I 1575 the

CF1148G

冒个泡(? rainbow_sjy 老师做法. gcd > 1 无论是 fair 还是 antifair 都无法给出一个很好的限制, 这启发我们建立补图, 即化为 gcd = 1, 此时两种判定分别是: 选出大小为 \(k\) 的独立集 和 选出大小为 \(k\) 且每个点所在联通块 \(\ge 2 ......
1148G 1148 CF

【题解】CF1110D Jongmah(DP)

【题解】CF1110D Jongmah 代码很短,但是思路我怎么也想不到的神仙 DP。 题意概述 你在玩一个叫做 Jongmah 的游戏,你手上有 \(n\) 个麻将,每个麻将上有一个在 \(1\) 到 \(m\) 范围内的整数 \(a_i\)。 为了赢得游戏,你需要将这些麻将排列成一些三元组,每个 ......
题解 Jongmah 1110D 1110 CF

CF38F 题解

blog。严重怀疑这题放到 2023 年至少 *2000,评绿合情合理。 首先是博弈论。然后数据范围很小。直接暴力 DP 啪的一下上去了,很快啊! 这就抽象起来了。另一篇题解说不能暴力转移,但是你先预处理出来 \(num(s)\),然后直接记忆化搜索,暴力枚举每一次操作的字符,这不就做完了吗。 具体 ......
题解 38F CF 38

CF961E Tufurama 题解

CF961E Tufurama 题解 二维数点做法 题意 给定长度为 \(n\) 的序列 \(a\),统计二元组 \((i,j)\) 的个数,使得该二元组满足 \(1 \leq i < j \leq n, a_i \geq j, a_j \geq i\)。\(n\) 在 \(2 \times 10^ ......
题解 Tufurama 961E 961 CF

[题解] CF1003E - Tree Constructing

CF1003E - Tree Constructing 题目传送门 知识点:贪心 题意 给定 \(n\) 个顶点,问是否能够构造出一棵直径为 \(d\) 的树,且每个顶点的度数最多为 \(k\) 。 思路 我们要构造出一棵树,使得其直径长度一定为 \(d\) ,那么我们可以先选择 \(d + 1\) ......
题解 Constructing 1003E 1003 Tree

[CF762D] Maximum path 题解

[CF762D] Maximum path 题解 想法 首先考虑问题的弱化版,如果不能往左走,能取到的最大值是多少。 这个问题可以用一个显然的 DP 解决,\(f_{i,j}\) 表示走到第 \(i\) 列,第 \(j\) 行,并且不会再访问这一列其它的方格,能取到的最大值。 转移可以从三个方向考虑 ......
题解 Maximum 762D path 762

[CF1882D 题解]

对于一颗子树,我们一定是先将其根节点所有儿子所在的子树变成相同,然后再将这颗子树变成相同。 我们设 \(f_i\) 表示第 \(i\) 个节点的父亲节点,\(siz_i\) 表示第 \(i\) 个节点的子树大小。 我们需要求 \(\displaystyle\sum_{i=1}^{n}(a_i\opl ......
题解 1882D 1882 CF

CF1425F Flamingoes of Mystery 题解

题目传送门 前置知识 前缀和 & 差分 解法 令 \(sum_k=\sum\limits_{i=1}^{k} a_k\)。考虑分别输入 \(sum_2 \sim sum_n\),故可以由于差分知识得到 \(a_i=sum_i-sum_{i-1}(3 \le i \le n)\),接着输入 \(a_2 ......
题解 Flamingoes Mystery 1425F 1425

CF441E Valera and Number

题目链接 这道题一个朴素的思路就是:维护 \(f_{i,j}\) 表示第 \(i\) 轮后 \(x=j\) 的方案数。时间复杂度 \(O(k\times 2^k)\)。显然过不了。 我们尝试寻找一个能抛开 \(x\) 的值域的做法。不妨重新设 \(f_{i,j}\) 表示第 \(i\) 轮结束时的 ......
Valera Number 441E 441 and

《CF1062F Upgrading Cities》 解题报告

拓扑排序好题。 首先需要一个比较显然但从来没用过的性质,任何时刻,队列中的点都不可能相互之间有你到我,或者我到你的关系。 所以当枚举到一个点,出现队列中除了他还有两个及以上的数,那么这个点就一定不可能被统计到答案中。 考虑没有点的情况,也就是说剩下的点都只能由他拓展出来,所以他可以到达剩下的所有点。 ......
Upgrading 报告 Cities 1062F 1062

加训日记 Day8——关于cf一道题调了半天这件事

Day8,9.28 ·国庆假期前狠狠刷cf ·把之前比赛的题目基本上都补了(牛客的没来得及补) ·这一个星期日均四道题,确实挺不错的 ·思维还是跟不上捏 ......
一道 日记 Day8 Day

Hydration completed but contains mismatches 报错,如何解决?

最近在用vue3+node+TS+vite在搭建SSR服务器端渲染项目时候,遇到问题 Hydration completed but contains mismatches?字面意思就是客户端激活已完成,但是存在不匹配;若是第一次遇到这个问题,貌似还不是很懂? 所谓客户端激活指的是Vue在浏览器端接 ......
mismatches Hydration completed contains but

题解 CF1873H【Mad City】

其他题解怎么又 Tarjan 又 Dijkstra 的,这是 div4H 的样子吗,来个简单好写的做法。 题面里的人名太复杂了,本题解中称为警察和小偷。 注意到,如果小偷成功到达了环上,那么一定不会被警察抓到。因为小偷知道警察下一步会走到哪里,他可以执行相同的操作(顺时针/逆时针/静止),使得他和警 ......
题解 1873H 1873 City Mad

CF765F Souvenirs 解题报告

简要题意: 给定一个序列,每次查询一个区间差最小的2个数的差。 解法1(我个人最喜欢的解法): 考虑莫队。 当一个不太经典的数据结构出现时,如果能离线,那么莫队是最自然的想法。 这个问题具有一个很显然的性质就是,对一个区间排好序后,答案一定是某相邻的两个数带来的,所以我们的莫队大概率离不开维护顺序这 ......
Souvenirs 报告 765F 765 CF

CF1195 Codeforces Round 574 (Div. 2)

CF1195A Drinks Choosing 先将相同权值的配对直到只剩下一个,然后再配剩下的单个。 #include<iostream> #include<cstdio> using namespace std; const int N=1005; int n,k; int a[N]; int ......
Codeforces Round 1195 574 Div

CF1440 Codeforces Round 684 (Div. 2)

CF1440A Buy the String 每个点有两种决策,要么选当前的字符,要么选跟当前字符不同的字符,取个较小值相加。 #include<iostream> #include<cstdio> using namespace std; const int N=1005; int T; int ......
Codeforces Round 1440 684 Div

CF1197 Educational Codeforces Round 69 (Rated for Div. 2)

CF1197A DIY Wooden Ladder 答案为 \(\min(a_{n-1},n-2)\)。 #include<iostream> #include<cstdio> #include<algorithm> using namespace std; const int N=100005; ......
Educational Codeforces Round Rated 1197

CF1447 Codeforces Round 683 (Div. 2, by Meet IT)

CF1447A Add Candies 可以将操作看做将 \(a_i\) 减 \(i\),然后第 \(i\) 次操作 \(i\) 就是合法的。 #include<iostream> #include<cstdio> using namespace std; int T; int n; void so ......
Codeforces Round 1447 Meet 683

CF1008 Codeforces Round 497 (Div. 2)

CF1008A Romaji 直接模拟。 #include<iostream> #include<cstdio> #include<cstring> using namespace std; const int N=105; int n; char s[N]; int main() { scanf( ......
Codeforces Round 1008 497 Div

CF1011 Codeforces Round 499 (Div. 2)

CF1011A Stages 每次记下上一个选的位置,贪心能填就填。 #include<iostream> #include<cstdio> using namespace std; const int N=55; int n,k; char s[N]; int cnt[27]; int main( ......
Codeforces Round 1011 499 Div

CF1020 Codeforces Round 503 (by SIS, Div. 2)

CF1020A New Building for SIS 分类讨论 \(a,b\) 两个端点的几种情况就好了,特判 \(t_a=t_b\) 的情况。 #include<iostream> #include<cstdio> #include<cmath> #include<algorithm> usi ......
Codeforces Round 1020 503 Div

CF1036 Educational Codeforces Round 50 (Rated for Div. 2)

CF1036A Function Height 答案为 \(\lceil \frac{k}{n}\rceil\)。 #include<iostream> #include<cstdio> using namespace std; long long n,k; int main() { scanf(" ......
Educational Codeforces Round Rated 1036

CF1072 Codeforces Round 517 (Div. 2, based on Technocup 2019 Elimination Round 2)

CF1072A Golden Plate 第 \(i\) 个矩形的周长为 \(2(w - 4(i - 1))+2(h - 4(i - 1))-4\),枚举 \(i\) 求和。 #include<iostream> #include<cstdio> using namespace std; int n ......
Round Elimination Codeforces Technocup based

CF1079 Codeforces Round 522 (Div. 2, based on Technocup 2019 Elimination Round 3)

CF1079A Kitchen Utensils 令 \(c_i\) 表示餐具 \(i\) 出现的数量,最小的餐具套数为 \(t=\lceil \frac{\max\{c_i\}}{k}\rceil\),按照这个计算就好了。 #include<iostream> #include<cstdio> # ......
Round Elimination Codeforces Technocup based