题解914b cf

cf2700

cf 2700 随机做题记录 Nullify The Matrix 博弈. 关键在分析 00x 00x xxx 的答案, 就能猜出 先手必胜当且仅当至少有一个副对角线异或值非零. 知道结论后证明是显然的. Team Players 显然是容斥+枚举三元环. ......
2700 cf

CF434E Furukawa Nagisa's Tree

CF434E Furukawa Nagisa's Tree 洛谷:CF434E Furukawa Nagisa's Tree Codeforces:CF434E Furukawa Nagisa's Tree Problem 冈崎朋也要送古河渚一棵点带点权的树。给定常数 \(k, x, y\),其中保 ......
Furukawa Nagisa 434E Tree 434

[SDOI2010] 大陆争霸 题解

[题目传送门](https://www.luogu.com.cn/problem/P2446)# 解法由题可知,一个城市$u$保护城市$v$,所以建一条边$u \to v$表示城市$u$保护城市$v$,因为题目说保证有解,所以建的图一定是一个**有向无环图$DAG$** 。再在此基础上求出最短路径。 ......
题解 大陆 SDOI 2010

「HCOI-R1」报名人数 题解

博客园。 我们会发现,\(2\) 和 \(3\) 的火柴个数是一样的,\(9\) 和 \(0\) 的火柴个数是一样的。 所以只有在 \(12\) 到 \(13\) 这样是合法的,自己推一下可以知道,最多只有连续两个。 而在 \(l\) 到 \(r\) 的长度大于 \(9\) 的时候可以直接输出 \( ......
题解 人数 HCOI-R HCOI

CF1178H Stock Exchange题解

CF1178H题解 分成两个问题解决 问题一:最小时间 发现具有单调性,于是二分,考虑怎么 \(check\) ,画几个函数图像之后看出,在最终时刻最大的\(n\) 个点,在 \(0\) 时刻必然要可以取到 问题二:最小交换次数 正常费用流建图,初始,终止时各一个,前缀和优化建边 具体的,是在排过序 ......
题解 Exchange 1178H Stock 1178

CF contest 1909 Pinely Round 3 (Div. 1 + Div. 2) 题解(Vanilla的掉分赛)

[Pinely Round 3 (Div. 1 + Div. 2) - Codeforces](https://codeforces.com/contest/1909) $$ \color{purple}\large\textbf{世界上只有一种真正的英雄主义,} $$ $$ \color{red}... ......
题解 Div contest Vanilla Pinely

AtCoder Beginner Contest 333题解A-D

⭐Toyota Programming Contest 2023#8(AtCoder Beginner Contest 333) 前言: 好的,比赛的时候给比赛忘了,少跑二十多分钟,好在这次题目都比较简单,也算是迅速赶上了 顺带一提,为了赶时间貌似没有一题是用C++写的…… 模拟只会猜题意,贪心只能 ......
题解 Beginner AtCoder Contest 333

AtCoder Beginner Contest 334题解

⭐AtCoder Beginner Contest 334 前言: 比赛题目链接 --按照惯例只写了主要部分的代码-- 特别说明:Rust有一个竞赛用的输入库,并且写ABC是可以用的,但是平时写洛谷是用不了的,所以我自己写了一个cin(),凑活能用,代码见下: 读输入函数 fn cin() -> S ......
题解 Beginner AtCoder Contest 334

【题解】洛谷P1496 火烧赤壁 (离散化)

P1496 火烧赤壁 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 我们首先先看数据,n<=20000,数据不多,但是范围大(-10^9<=Ai,Bi<=10^9),这时,就可以用离散化了。但是在这里我们会遇到区间重合的问题(也可以使用区间合并),如下图 本题的题意是让我们求出燃 ......
题解 P1496 1496

[ABC265F] Manhattan Cafe 题解

[ABC265F] Manhattan Cafe 题解 思路解析 很有思维难度的一道题。思路是dp,\(f[i][j][k]\) 表示已经计算了 \(i\) 维,距离点 \(p\) 的距离为 \(j\) ,距离点 \(q\) 的距离为 \(k\) 时的整点 \(r\) 个数,由此可见我们的每一维都可 ......
题解 Manhattan 265F Cafe ABC

ABC334 全套题解

A - Christmas Present 简单题。 void slv() { int a = Read<int>(), b = Read<int>(); if (a > b) Puts("Bat"); else Puts("Glove"); return; } B - Christmas Tree ......
题解 全套 ABC 334

题解 ABC334F【Christmas Present 2】

设 \(f_i\) 表示假设只有编号为 \(1\sim i\) 的点,此时的答案。\(f_n\) 即为所求。 显然有: \[f_i=\min\limits_{i-k\le j < i}\{f_j+dis(s\to j+1\to j+2\to\cdots\to i)\}+dis(i\to s) \]当 ......
题解 Christmas Present 334F ABC

题解 ABC334E【Christmas Color Grid 1】

先求出初始时绿连通块数量。 枚举每个红色格子,将其染成绿色本应增加一个绿连通块,但是它每与一个绿连通块相邻,就又会减少一个绿连通块。根据上述规则可以求出每个红色格子染绿后的绿连通块数量,求平均值即可。 时间复杂度 \(O(nm)\)。 // Problem: E - Christmas Color ......
题解 Christmas Color 334E Grid

题解 ABC334G【Christmas Color Grid 2】

先求出初始时绿连通块数量。 将一个绿色格子染成红色,会改变绿连通块数量,当且仅当这个绿色格子是孤点或割点。如果是孤点,会使得绿连通块数量减少一;如果是割点,会使得绿连通块数量增加它所在的点双数量减一。根据上述规则可以求出每个绿色格子染红后的绿连通块数量,求平均值即可。 时间复杂度 \(O(nm)\) ......
题解 Christmas Color 334G Grid

P9669 [ICPC2022 Jinan R] DFS Order 2 题解

Description P 哥有一棵树,根节点是 \(1\),总共有 \(n\) 个节点,从 \(1\) 到 \(n\) 编号。 他想从根节点开始进行深度优先搜索。他想知道对于每个节点 \(v\),在深度优先搜索中,它出现在第 \(j\) 个位置的方式有多少种。深度优先搜索的顺序是在搜索过程中访问节 ......
题解 P9669 Jinan Order 9669

CF1621G Weighted Increasing Subsequences

CF1621G Weighted Increasing Subsequences 你有一个长度为 \(n\) 的序列,定义 \(a\) 的一个长度为 \(k\) 的子序列为 \(a_{i_1},a_{i_2},\dots,a_{i_k}\)。由此,我们不难发现,\(a\) 的一个长度为 \(k\) ......
Subsequences Increasing Weighted 1621G 1621

CF983E

题目传送门 解题思路:倍增+树剖+树状数组 对于每次询问,我们可以看成是两个点都不断往上跳(如果一个点是另一个点的祖先则是只有一个跳),有一个很明显的贪心策略:每次都跳到能跳到的深度最小的点。然而一次一次往上跳可能被极端数据卡掉,所以要用倍增维护跳 \(2^i\) 次能跳到哪里。 然而两个点都跳到他 ......
983E 983 CF

CF1140G

居然差一点场切了。 首先可以将两棵树上对应的点看作一个点的两个不同状态考虑一个类似最短路的东西:设 \(dis_{i,j,0/1,0/1}\) 为树上 \(0/1\) 状态的 \(i\) 点到 \(0/1\) 状态的最短路。考虑怎样维护这个值。 由于是树上路径问题,容易发现设 \(k\) 为树上 \ ......
1140G 1140 CF

CF1536E

很强的题。 结论:每个非 \(0\) 点的值一定是它到最近的 \(0\) 的距离。 证明:记该点值为 \(x\),上文距离为 \(d\)。考虑反证。 若 \(x>d\)。 考虑该点到 \(0\) 的最短路。记路径上的点到该点的距离为 \(d'\),值为 \(x'\)。则 \(x'\) 最小能取到 \ ......
1536E 1536 CF

CF1768F

dp+根号分治,配得上省选题的难度。 一眼 dp,虽然暴力肯定过不了,但是把朴素转移先列出来绝对没坏处。 \[dp_i=\min\limits_{1\leq j<i}(dp_j+\min\limits_{j\leq k\leq i}a_k\times v) \]这个东西很难用 DS 维护,有 \(\ ......
1768F 1768 CF

CF850C

学习 SG 基础题。 首先发现每个质数之间是独立的,于是分成了若干个子游戏。 考虑如何计算每个子游戏的 SG 值。一开始没搞懂为什么可以状压,看了大佬代码才明白:对于一个质数 \(p\),\(p^k\) 对答案是否有影响,只和这个 \(k\) 是否出现有关。所以将 \(k\) 的出现状态情况成二进制 ......
850C 850 CF

CF1444C

可撤销并查集好题。 首先考虑如果已经确定选哪两组,该怎么判断。发现是一个二分图判定的问题,拓展域并查集即可。 那如果要求出所有可能的两组的答案怎么办。首先,如果两组中至少有一组,在只加入组内边时就已经不可能是二分图了,这种情况就显然是不行的。 否则,可以考虑预先加入所有组内的连边,枚举每一种出现过的 ......
1444C 1444 CF

CF870F

感觉完全没有 *2700? 看到题,猜测 \(\max dis\) 不会很大,于是按照路径种类分类讨论一下路径 \((i,j)\)。下设 \(f_i\) 为最小质因数,并且更下面的情况不包括上面的情况。 \(\gcd(i,j)>1\) 这种显然 \(dis=1\),数量则为 \(\sum\limit ......
870F 870 CF

【题解】洛谷P1068 [NOIP2009 普及组] 分数线划定 (map)

## 题目描述 世博会志愿者的选拔工作正在 A 市如火如荼的进行。为了选拔最合适的人才,A 市对所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试。面试分数线根据计划录取人数的 $150\%$ 划定,即如果计划录取 $m$ 名志愿者,则面试分数线为排名第 $m \times 150\ ......
题解 分数线 分数 P1068 1068

CF1866K

李超线段树二次离线。 容易发现,将和某个点 \(x\) 相邻的边权翻若干倍后,直径所在位置有两种可能:经过或不经过该点。不经过可以跑一次直接求,否则还要分类讨论一下。 \(\operatorname{deg}_x=1\) 那么它会作为直径的一个端点。 否则 直径会从一条边进,另一条边出。 前者是简单 ......
1866K 1866 CF

CF119D

还是一道很综合的 string 练手题。 先来分析一下,将 \(B\) 按照答案分成三段,三段与 \(A\) 都有什么关系。 第一段:\(A\) 的一个子串。 第二段:\(A\) 的一段后缀翻转。 第三段:\(A\) 的一段前缀翻转。 我们大概率是要枚举其中一个的,其中第三段都能用 \(A,B\) ......
119D 119 CF

CF1217F

强制在线是诈骗,还是很有意思的。 首先,如果没有强制在线就是一个 SGT 分治板子。强制在线看起来做不了,但是发现 \(lastans=0/1\)。这启示我们不同的加边可能性不会太多。考虑先记录两种加边可能。 容易发现,如果当前时刻 \(j\) 可能操作 \((u,v)\),上一次可能的时刻是 \( ......
1217F 1217 CF

CF119D

还是一道很综合的 string 练手题。 先来分析一下,将 \(B\) 按照答案分成三段,三段与 \(A\) 都有什么关系。 第一段:\(A\) 的一个子串。 第二段:\(A\) 的一段后缀翻转。 第三段:\(A\) 的一段前缀翻转。 我们大概率是要枚举其中一个的,其中第三段都能用 \(A,B\) ......
119D 119 CF

CF1178H

cdqz 两道题都很有意思啊!顺便是第一篇 *3500 题解。 先考虑第一问。 显然有单调性,所以可以二分。cdqz 这是二分专题吗 Lemma 1:所有操作都在 \(0\) 和 \(t\) 时刻进行。 Proof:这是若干个一次函数,最大或最小值都会在端点处取得。所以是显然的。 接下来你就要使你在 ......
1178H 1178 CF

CF1055F Tree and XOR

这道题代码虽然比较短,但花了我整整一天才过,太菜了 这是 CF241B 的加强版,但是有点不同,因为 CF241B 后半部分求前 \(k\) 大的和没法优化了,而这道题能把前面的求第 \(k\) 小时间复杂度优化到单 log ,但是需要注意这道题开 trie 完全开不下,所以肯定没法 trie 上二 ......
1055F 1055 Tree and XOR