cf

CF1034D 题解

## CF1034D ​ 总评:非常牛逼的 $3500$。 ​ 求第 $k$ 大的价值可以二分一个 $m$,变成求价值 $\ge m$ 的区间**个数**,设其为 $C(m)$。求出第 $k$ 大价值 $M$ 后,本题求前 $k$ 大的价值和,这便要求我们求价值 $\ge m$ 的区间**价值和** ......
题解 1034D 1034 CF

CF1601F Two Sorts 题解--zhengjun

[link](https://www.luogu.com.cn/problem/CF1601F) 这里提供一种不用 meet in middle 的方法,速度比较可观。 #### 发现性质 开始简单的推一下式子。 $\sum (i-a_i)\bmod p=\sum (rk_i-i+p\times\l ......
题解 zhengjun 1601F Sorts 1601

CF1328E 题解

[problem](https://www.luogu.com.cn/problem/CF1328E) & [blog](https://www.cnblogs.com/liangbowen/p/17540450.html)。 提供一个代码上不一样(?)的做法。 找到询问集合中,深度最大的点 $mx ......
题解 1328E 1328 CF

CF1334A Level Statistics 题解

## CF1334A Level Statistics 题解 ### 思路分析 有 $4$ 种情况会导致记录有问题。 - $c_i const int MaxN = 1e2 + 5; int t; int n; int c[MaxN], p[MaxN]; void solve() { scanf(" ......
题解 Statistics 1334A Level 1334

CF559B - Equivalent Strings

首先我们考虑第一种做法,我们搜索 $dp_{x,y,l,r}$ 判断 $s[x,y]$ 和 $t[l,r]$ 是否等价,同时记忆化搜索。 但是这样是很明显不行的。如果长度是 $2$ 的整次幂,我们仅分析最底层长度为 $1$ 的区间,就会有 $n^2$ 个函数被调用。 我们考虑加上一个小优化,我们每次 ......
Equivalent Strings 559B 559 CF

CF1787G

[题目链接](https://www.luogu.com.cn/problem/CF1787G "题目链接") ### 题意简述 $n$ 个节点的无根树,**边**有长度和颜色,一条**好**的路径上边颜色相同,点都没被摧毁,且包含树上所有该颜色的边,一次操作摧毁或恢复一个节点,每次操作后询问最长的 ......
1787G 1787 CF

CF1817C Similar Polynomials

直接带入 $$ \begin{aligned} \sum_{i=0}^{d}b_ix^i&=\sum_{i=0}^{d}a_i(x+s)^{i}\\ &=\sum_{i=0}^{d}x_i\sum_{j=i}^{d}\binom{j}{i}a_js^{j-i}\\ \end{aligned} $$ ......
Polynomials Similar 1817C 1817 CF

CF1702G2 Passable Paths (hard version)

## 思路 题意:判断是否存在一条链包含树上给定点集。 考虑把 $1$ 当做树的根,将无根树转化为有根树。 考虑这样一个性质:若存在满足条件的最短链,则点集中深度最深的点 $u$ 是该链的一个端点,点集中距离 $u$ 最远的点 $v$ 是该链的另一端点。 >证明:若点 $u$ 不是链的端点,则 $u ......
Passable version 1702G Paths 1702

CF771C

提供一个不需要换根的树形 $\text{dp}$ 做法。 假如只有一次询问,那么答案为树上两点间距离除以 $k$ 向上取整,那么很自然地想到能否直接求树上所有路径长度和,然后除以 $k$ 向上取整?显然是不行的,因为每条路径长除以 $k$ 的余数合并后可能错误地减少贡献。于是我们考虑将路径长除以 $ ......
771C 771 CF

CF1628E

### 前置知识 - 线段树 - $\text{Kruskal}$ 重构树 - 点集 $\text{LCA}$ ### 思路 看到询问为 $x$ 到所有白色节点的路径上最大可能边权,可以利用 $\text{Kruskal}$ 重构树转化为 $x$ 与所有白色点的 $\text{lca}$ 的权值。 ......
1628E 1628 CF

CF1747D

#### 题意 给定一个长度为 $n$ 的序列 $a$ 和若干询问区间,问能否通过若干次操作使询问区间均变为 $0$。一次操作可以选择一个长度为奇数的区间并将这个区间区间赋值为这个区间的异或和。 #### 思路 考虑这样一个性质:每次操作后不会改变这个区间的异或值。 >证明:设当前操作的区间为 $a ......
1747D 1747 CF

CF1787G Colorful Tree Again

这个故事告诉我们:不要转化完题意以后抛开原问题的特殊性质,要不然你会得到一个不可做的原题加强版。 首先抠出所有好链,并**时刻注意原图是一棵树**。 为了利用好树的性质,我们定一个根,使得每个点有唯一父亲。 然后把所有链挂在这条链的 `lca` 上。 考虑摧毁一个节点的影响。 把一个点 $u$ 摧毁 ......
Colorful 1787G Again 1787 Tree

CF div3 867

[题目链接](https://codeforces.com/contest/1822 "题目链接") *** ###G2 考虑按值域分治 将 $x$ 当作中间的数 如果 $x \leq 10^6$ , 直接根号复杂度枚举其因子即可 如果 $x > 10^6$ , 注意到一个数的上限是 $10^9$ ......
div3 867 div CF

CF div3 883

[题目链接](https://codeforces.com/contest/1846 "题目链接") *** ###E2 按值域分治的技巧 前置 : $f(k , n) = 1 + k + k ^ 2 + ... + k ^ n$ $①$ : 假设答案最终的 $n = 2$ , 对于 $1 + k ......
div3 883 div CF

CF500C New Year Book Reading 题解

这一题是一道比较复杂的贪心(~~对于本蒟蒻来说~~) 假如两本书 $a$ 和 $b$,先看 $a$ 再看 $b$,那么我们开始的时候就把 $a$ 放在上面。 这样的话,我们看 $a$ 时就不需要搬动 $b$,看 $b$ 的时候会搬动 $a$。 而一开始如果把放在上面,看 $a$ 的时候需要搬动 $b ......
题解 Reading 500C Book Year

CF455D Serega and Fun

## Problem 给定长度为 $n(1\le n\le 10^5)$ 的序列($1\le a_i\le n$),共有 $q(1\le q\le 10^5)$ 个询问,支持两种操作: `1 l r` 将区间 $[l,r]$ 依次向右移动一位,其中 $a_r$ 移动到 $a_l$。 `2 l r k ......
Serega 455D 455 Fun and

CF1817E Half-sum

`greedy` 把数分成两个集合 $A,B$,且 $A 定理 $1$ > > $A$ 集合合并的顺序一定是从大往小的,$B$ 集合是从小往大的。 应该很好猜到,但是证明需要一点推导。 大概可以局部到 $x,y,z,w$ 四个数的情况。 几种情况分别是 $\frac{x+y}{8}+\frac{z} ......
Half-sum 1817E 1817 Half sum

CF1842E Tenzing and Triangle - 线段树优化 dp -

题目链接:https://codeforces.com/contest/1842/problem/E 题解: 首先,如果两个等腰三角形相交了,那答案肯定不会更优。因此不会相交。 先考虑一个 $n^2$ 的 dp: 设 $dp_i$ 表示考虑到 $x=i$ 时的最小代价,首先可以先都加一个 $\sum ......
线段 Triangle Tenzing 1842E 1842

好题-CF Zip-line 树状数组详解

真的是非常好的一道题,可以大幅增大各项能力,看懂了一定关了我的的代码自己写 一定一定一定一定一定一定要自己写,这个经验非常不错!!!! 非常详细的思路过程都在注释里面了 非常好理解,不理解请评论 ```c++ #include using namespace std; #define int lon ......
数组 Zip-line line Zip CF

CF882 div2

###碎碎念 时隔三个月我终于想起了我的博客密码(雾),好吧中间穿插着四级考试和期末周以及搬家balabala好多事情,回家摆了几天之后突然意识到自己已经足足一个月没有像样的写题了,觉得非常羞愧,于是决定洗心革面,重新做人。然后就是一次次的被题目AC哭哭/(ㄒoㄒ)/ #开始正文 ##A 是一个求相 ......
div2 882 div CF

CF1451F 题解

[problem](https://www.luogu.com.cn/problem/CF1451F) & [blog]()。 这题原本的题解满是废话,让我写一篇( 这边直接给结论了。令 $val_p = \oplus_{x+y=p}\ a_{x,y}$,设 $S=\Big[\normalsize ......
题解 1451F 1451 CF

CF1834E MEX of LCM

[也许更好的阅读体验](https://blog.csdn.net/Morning_Glory_JR/article/details/131583841?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22% ......
1834E 1834 MEX LCM CF

CF573E Bear and Bowling

这种题目首先我们可以想一个比较蠢的 $n^2$ DP,然后观察一些性质来优化它。 那很显然我们可以设 $f_{i,j}$ 表示前 $j$ 个数选了 $i$ 个,有 $$ f_{i,j}=\max(f_{i,j-1},f_{i-1,j-1}+a_j\cdot i) $$ 写个暴力,先猜了一手凸性发现错 ......
Bowling 573E Bear 573 and

CF576E Painting Edges 题解

# CF576E Painting Edges ~~关于我看完题解后改了一个位置就过题导致我都不知道我怎么过的~~ 当然现在真的大彻大悟了。 ## 题意 给定一张 $n$ 个点,$m$ 条边无向图,有 $k$ 种颜色,初始每条边无颜色,给定 $q$ 个操作,每个操作某条边染成颜色 $c$。只有一个操 ......
题解 Painting Edges 576E 576

「CF1637H」Minimize Inversions Number

# 题目 [点这里](https://codeforces.com/problemset/problem/1637/H)看题目。 给定一个 $1\sim n$ 的排列 $p$。 你可以进行下列操作正好一次: - 选定 $p$ 的一个长度为 $k$ 的子序列,并将其按照相同的顺序移动到 $p$ 的最前 ......
Inversions Minimize Number 1637H 1637

CF1839D Ball Sorting

[也许更好的阅读体验](https://blog.csdn.net/Morning_Glory_JR/article/details/131561922?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22% ......
Sorting 1839D 1839 Ball CF

Z CF 板刷记录

abbrlink: '' categories: [] date: '2023-05-18T22:41:08.708374+08:00' tags: [] title: 「Codeforces」CF 板刷记录 toc: true top: 10 updated: 2023-7-3T14:37:31. ......
板刷 CF

【CF1157C2】题解

# CF1157C2 ## 理解题意 首先,读题。[题目传送门](https://www.luogu.com.cn/problem/CF1157C2) **题意:你一次可以取出序列的最左或最右边的数,然后要你求做了$k$次操作后的最长合法序列,输出你取出的数** 看到题目第一行: *CF1157C1 ......
题解 1157C 1157 CF C2

【CF1845E】Boxes and Balls

# 题目 题目链接:https://codeforces.com/problemset/problem/1845/E $n$ 个盒子排成一排,每个盒子里可能会有 $0$ 或 $1$ 个球,一次操作可以把一个球移动到相邻的盒子中,并且要求任何时刻不能存在一个盒子装有两个球。 给定 $m$,求在恰好 $ ......
1845E Boxes Balls 1845 and

CF1487B Cat Cycle 题解

## CF1487B Cat Cycle 题解 ### 思路分析 在这道题中,很明显是一道数学题,因为有十分明显的数据范围: $$ n \le 10 ^ {9} , k \le 10 ^ {9} $$ 分析如下: - 对于 $n$ 为偶数的情况下,猫 $A$ 和猫 $B$ 永远不可能相遇,所以直接输 ......
题解 1487B Cycle 1487 Cat