little 1333a artem cf

题解 CF457F 【An easy problem about trees】

尝试理解,感谢 cz_xuyixuan 的题解。 算作是很多情况的补充说明。 我们不妨先二分答案,将 \(\ge mid\) 的设为 \(1\),\(<mid\) 的设为 \(0\),于是问题转化为了权值均为 \(0/1\) 的版本。 我们称一棵树的大小为其非叶节点数。 我们称一棵大小为奇数的树为奇 ......
题解 problem about trees 457F

Conveyor (CF E) (dp 差分/前缀 条件迷惑t)

思路 : 找各种性质 1 每一秒只有 史莱姆进入起始点 , 然后他会选一个方向走(右或者下), 每一秒 史莱姆都会这样走 在考虑 前 t 秒内 有S个史莱姆到达这个点, 然后就会 有 s+1/2 个 往右走, s/2 往下走 而且 问t秒 只会 有 t-n-m-1 秒后的时刻影响 (诈骗t ) 于是 ......
前缀 Conveyor 条件 CF dp

CF1876C/CF1877E Autosynthesis

题目链接 考虑将所有的 \(i\) 指向 \(a_i\),将会建出一张基环内向树。 对于一个节点 \(i\),假若最终我们未圈出它,那么我们称我们选择了 \(i\) 的出边;否则是未选择。 不难发现,最终答案合法当且仅当:所有未选择出边的点,它的入边最少有一条被选择了;所有选择了出边的点,它所有的入 ......
Autosynthesis CF 1876 1877

CF1878F Vasilije Loves Number Theory

CF1878F Vasilije Loves Number Theory 首先约数个数是积性函数,题目中要求 \(\gcd(n,a)=1\),所以 \(a\) 和 \(n\) 互质,\(n=d(a)d(n)\) ,于是问题转化为 \(n\) 是否整除 \(d(n)\)。 观察题目,\(n\) 可能会 ......
Vasilije Number Theory 1878F Loves

CF1878G wxhtzdy ORO Tree

CF1878G wxhtzdy ORO Tree 设 \(f(x,y)\) 表示树上 \(x\) 到 \(y\) 简单路径上的点权或和中 \(1\) 的个数。 有一个性质:选取的 \(z\) 节点一定满足它比它左边的点(\(l\))或者右边的点(\(r\))的贡献至少要多一位,即 \(f(x,l)< ......
wxhtzdy 1878G 1878 Tree ORO

题解 - CF1972E - Divisors and Table

这题正解是虚树,本解法卡常,仅适合不会虚树的。(例如本人) 注意:下文中根节点深度定义为 1 . 第一步: 转化问题 我们把 $ g(x,y,z) $ 拆开,考虑每个质数是哪些点的因子。 包含这个质数的点构成一个点集,我们只需求这个点集 S 的 $ \sum\limits_{x,y,z\in S } ......
题解 Divisors 1972E Table 1972

CF1877D Effects of Anti Pimples

计算每个数作为最大值的贡献,计算每个数作为最大值的次数。 每个数作为最大值时的贡献显然是 \(a_i\times cnt_i\),\(cnt_i\) 为 \(a_i\) 在多少种染色方案中作为最大值出现,我们主要来对每个数求 \(cnt_i\)。 我们对于从 \(1\) 到 \(n\) 枚举元素,求 ......
Effects Pimples 1877D 1877 Anti

CF1746F Kazaee

prologue 数组范围一定要看好了开,不然容易我一样,调试调了一页多。 还有就是不要傻乎乎地只跑一次和哈希,因为和哈希(从下面地佬的题解中才知道)它其实算作是一种 trick(类比SA(Stimulate_anneal)。 analysis 这个题目的第二个询问时询问一个区间里面出现过的正整数的 ......
Kazaee 1746F 1746 CF

[CF568E] Longest Increasing Subsequence

题目描述 Note that the memory limit in this problem is less than usual. Let's consider an array consisting of positive integers, some positions of which c ......
Subsequence Increasing Longest 568E 568

CF1877 Div2 A-E 题解

A 显然 \(n\) 个队的得分之和为 \(0\),因此答案为这 \(n-1\) 个数的和的相反数。 赛时代码 B 小贪心。 将所有人按 \(b\) 升序排序,\(b\) 相同时按 \(a\) 降序,对每个人按 \(b\) 进行分类讨论: 若 \(b< p\),那么我们一定要选这个人,因为选了这个人 ......
题解 1877 Div2 A-E Div

CF125E MST Company

CF125E MST Company 对于一类凸函数,有时我们寻找极值是简单的,但如果加上一维限制,问题就变成了函数在某个特定位置的值,这时问题不好处理 wqs 二分通过二分斜率后寻找极值,可以用复杂度加一只 \(\log\) 的代价消去一维的限制。 具体来说,在本题中,设以 \(1\) 为端点的边 ......
Company 125E 125 MST CF

Codeforces Round 902 (Div. 2) (CF1877) B、C、D 题解

B 题目大意 你要传话给 \(n\) 个人,每传一下话需要花费 \(p\) ,当一个人被传话后,他可以最多传给 \(a_i\) 个人,每次花费 \(b_i\) 。问把话传给 \(n\) 个人的最小花费。 分析 首先传给第一个人只少要 \(p\) 下来贪心,每次让花费最小、且能够传话的人去传话。 考虑 ......
题解 Codeforces Round 1877 902

P6346 [CCO2017] 专业网络 & CF1251E1 Voting(Easy Version)

analysis 这个题目我们可以考虑用贪心来做。 我们不难看出来,这个题目是要让我们推出这么个结论:花小钱,办大人。 整体贪心的思路就出来了,然后就是实现部分。 因为我们认识的人随便是谁都可以。所以我们如果要买肯定是买最便宜的。这个性质可以用小根堆来维护。同时我们还可以维护我们可能结交的人数 \( ......
Version Voting 专业 P6346 1251E

CF963D Frequency of String

Frequency of String 莪怺逺禧歡仳特噻特。 记每次询问中的字符串为 \(t_i\)。约定字符串下标从 \(1\) 开始。 发现 \(\sum |t_i|\) 与 \(|s|\) 和 \(q\) 同阶,考虑使用 bitset 进行字符串匹配。 我们对于每一种字符 \(c\) 开一个 ......
Frequency String 963D 963 CF

CF1856B Good Arrays

题意简述: 给定一个序列 \(a\),我们定义一个序列 \(b\) 是好的当且仅当对于 \(1\dots n\) 内的每一个 \(i\),\(a_i\neq b_i\) 且 \(\sum_{i=1}^na_i=\sum_{i=1}^nb_i\)(\(a_i\),\(b_i\) 均为正整数)。 现在有 ......
Arrays 1856B 1856 Good CF

CF1857B Maximum Rounding

题目大意 给定一个自然数 \(n\),可以对任意一位进行四舍五入,可以进行任意次,求能得到的最大数。 \(n\) 的长度不超过 \(2\times 10^5\),没有前导零。 solution 首先,选择四舍五入的数一定 \(\ge 5\),不然对答案没有贡献。 其次,高位的数可能会受到低位的进位, ......
Rounding Maximum 1857B 1857 CF

CF1857F Sum and Product

根据题意我们有:\(b=a_i+a_j\),\(c=a_i\times a_j\)。 可以发现 \(a_i\) 和 \(a_j\) 是一元二次方程 \(x^2-bx+c=0\) 的根。 那么就可以根据求根公式 \(x=\dfrac{-b\pm \sqrt{b^2-4ac}}{2a}\) 来求出 \( ......
Product 1857F 1857 Sum and

CF1844E Great Grids 题解

Description 定义一个矩形 \(a\) 是好的,当且仅当其满足以下条件: 矩形中每一个元素 \(x\) 都为 \(A,B,C\) 其中之一 每一个 \(2\times 2\) 的子矩形都必须包含三个不同的字符 共用一条边的两个元素不相等 给定 \(k\) 个限制条件,限制条件分为两类: \ ......
题解 1844E Great Grids 1844

CF1051F The Shortest Statement

很经典的题了,不如说这种带有\(m-n\)很小这类限制的题的处理方法基本都如出一辙 由于图连通因此先搞个生成树出来,考虑非树边的数量很少,因此对于每组询问可以先用LCA求出两点间只经过树边的最短距离 考虑每条树边会如何影响答案,其实无非就是会经过这条树边的某个端点罢了,因此我们把非树边的端点都拿出来 ......
Statement Shortest 1051F 1051 The

CF506D Mr. Kitayuta's Colorful Graph

好久没更新这个单题系列了,主要是最近没啥CF比赛空闲时间又少,今天忙里偷闲写了两个题 这个题就比较典了,两点是否连通一般都是想到并查集维护,现在的问题是要对每种颜色的边把贡献算清楚 很容易想到枚举所有颜色的边,每次求出所有连通分量后遍历一遍询问统计答案,这样正确性显然但复杂度是\(O(m\times ......
Kitayuta Colorful Graph 506D 506

「CF1491H」Yuezheng Ling and Dynamic Tree

\(\text{「CF1491H」Yuezheng Ling and Dynamic Tree}\) \(\text{Solution}\) 根据弹飞绵羊的思路,考虑分块维护一个 \(\text{top}(u)\) 表示 \(u\) 第一个不在当前块的祖先,设块长为 \(O(B)\),考虑如何求 \ ......
Yuezheng Dynamic 1491H 1491 Ling

题解 CF600D Area of Two Circles' Intersection

题意简述 给出两个圆的圆心和半径,求两个圆的面积交。 思路 首先通过两圆半径和圆心的距离判断两圆是相离,包含还是相交。相离面积交为 \(0\),包含答案即为较小的圆的面积。当包含时相当于求两个弓形的面积。(见下图) 由正弦定理有: \[\begin{aligned} S_{\text{弓}ACD}& ......
题解 Intersection Circles 600D Area

题解 CF249E Endless Matrix

题意简述 在上图所示的矩阵中求一个子矩形的元素和。 思路 先可以考虑差分。然后问题转化为求以 \((x,y)\) 为右下角的矩形的元素和。先考虑 \(x\leq y\) 的情况。\(x>y\) 的情况同理可推。先可以算出以 \((x,x)\) 为右下角的,答案为 \(\sum\limits_{i=1 ......
题解 Endless Matrix 249E 249

代码源:a-good string(CF1385D,分支)

传送 点击查看代码 #include<bits/stdc++.h> using namespace std; char s[131080]; int _solve(int L,int R,char x) { if(L==R) return s[L]!=x; int M=L+(R-L)/2; int ......
分支 代码 a-good string 1385D

【DP】CF1829G Hits Different 题解

CF1829G 先将整个塔变为一个直角三角形的模样。这时就可以很好的用数组表示了,这时发现答案就是一个倒着的等腰直角三角形的和(不考虑边界)。 考虑预处理。 令 \(a_i\) 为点 \(i\) 所在的行数,\(f_i\) 表示 \(i\) 号点的答案,\(g_i\) 表示 \(i\) 和 它正上方 ......
题解 Different 1829G 1829 Hits

【分治】CF429D Tricky Function 题解

CF429D 令 \(sum_i\) 表示 \(\sum \limits_{j=1}^{i} {a_j}\)。 则 \(g(i, j) = (sum_j - sum_i)\)。 \(f(i, j) = (i - j)^2 + g(i, j)^2 = (i - j) ^ 2 + (sum_i - su ......
题解 Function Tricky 429D 429

【二分图】CF1139E Maximize Mex 题解

CF1139E 翻译中有一句话:校长将会从每个社团中各选出一个人。 就是一些人被分为一组,从每组中选一些人出来。 这就很容易想到通过二分图的匹配。 \(\operatorname{mex}\) 运算有一个显而易见的贪心:枚举每个值能否被匹配,第一个找不到的值就是答案。 由于 \(\operatorn ......
题解 Maximize 1139E 1139 Mex

「CF848D」Shake It!

\(\text{「CF848D」Shake It!}\) \(\text{Solution}\) 我们可以发现题目中的图可以拆分为若干个递归的子结构,可以对这些子结构考虑 \(\text{DP}\),设 \(f(i,j)\) 表示考虑对一个子结构 \((s,t)\) 加入 \(i\) 个点后形成的图 ......
Shake 848D 848 CF It

《CF gym Reverse LIS》解题报告

原题链接 一开始看到这题就很像模拟费用流,不过立马就放弃了,然后之后就再也没想过这个思路了。。。 正解是模拟费用流,先讲一下答案长什么样,把 \(0\) 的权值记为 \(1\) , \(1\) 的权值记为 \(-1\) ,那么我们答案就是要选一段前缀和 \(k\) 段不相交的区间的最大值加上 \(1 ......
Reverse 报告 gym LIS

《CF1824E LuoTianyi and Cartridge》 解题报告

好题。 模拟赛出了这题,抽象。 初步化简: 由于 \(\min (A,C)\) 不好处理,我们考虑从大到小加边加点,或者从小到大删边删点。 一般题目是考虑加边加点好操作一点,这题是考虑删边删点好操作。 然后我们记当前枚举的 \(\min (A,C)\) 的最小值是多少,记为 \(x\) 。然后称大于 ......
LuoTianyi Cartridge 报告 1824E 1824