题解codeforces div3 847

P9665 [ICPC2021 Macao R] Colorful Tree 题解

我永远喜欢数据结构。 题目传送门 给出一棵树,初始只有一个点 \(1\),其颜色为 \(C\)。 有 \(q\) 次操作,分为两种类型: \(0\space x\space c\space d\),记当前树中一共有 \(n\) 个点,新增一个 \(n+1\),其父亲为 \(x\),颜色为 \(c\) ......
题解 Colorful P9665 Macao 9665

ABC270F 题解

和博客园一样好的体验 思路 首先看到花最小代价使得所有点连通,果断转换成最小生成树问题。 接下来就要考虑怎么建图,首先陆地就正常连不用说,建机场和港口的代价貌似都是点权,考虑转成边权。因为一个点飞或者划船到另一个点要两重代价,所以若我们想让 \(u\) 和 \(v\) 建能飞过去的边,我们可以先从 ......
题解 270F ABC 270

P6859 蝴蝶与花 题解

题意: 有一个长度为 $ n $ 的序列 $ a $ ,其中所有元素都为 $ 1 $ 或 $ 2 $ ,要求进行 $ q $ 次操作,每次操作为以下之一: $ A $ $ s $ :询问是否存在 $ a $ 的连续子序列满足其中元素总和为 $ s $ ,若有合法的方案,输出这个方案的左右端点位置(多 ......
题解 蝴蝶 P6859 6859

CF1835D Doctor's Brown Hypothesis 题解

题目链接 点击打开链接 题目解法 首先只有在一个强联通分量里的点对才可能合法,因此我们这里说的图默认为强联通图 但是上面的条件成立只需要满足 \(k\ge n\),考虑用好 \(k\) 可以认为是极大的性质 所以说我们可以通过图中所有的环 \(+\) 路径来凑出 \(k\) 不难发现,所有的环能构成 ......
题解 Hypothesis Doctor 1835D Brown

CF249题解

CF249 link CF249E link CF249E题意 给你一个形如下图的矩阵 并有 \(T\) 组询问 每组询问给出 \(x_1,y_1,x_2,y_2\)。 求 \(\sum_{i=x_1}^{x_2}\sum_{j=y_1}^{y_2}A[i][j]\)。 其中 \(A[i][j]\) ......
题解 249 CF

P7110 晚秋绝诗 题解

好有意思的题目啊。 出题人太厉害了。 思路 考虑一个结论: 我们将两个没插旗的点与中间的点称为一段,其中中间的点必须全部插旗。 那么这一段如果已知两座山的高度,就一定可以得知所有的高度。 考虑为什么。 加入这一段是 \(a\sim b\)。 \[\begin{cases} h_a+h_{a+2}=2 ......
题解 P7110 7110

Advent of Code 2023题解 [Mathematica/Python]

Day 1 Part 1 (*读取文件*)lines = ReadList["E:\\ExplorerDownload\input.txt", String]; (*计算校准值*) calibrationValues = ToExpression[ StringJoin[#[[1]], #[[-1] ......
题解 Mathematica Advent Python 2023

Codeforces Round 912 (Div. 2)

Codeforces Round 912 (Div. 2) 基本概述 最难受的一集。 A 题秒了。 B 题幸苦推了两个小时,最后也通过了pretest了,结果赛后被 HACK。 C 题知道是DP,但觉得不好推状态转移方程,所以全心全意去做 B 题了。 爆掉 \(150\) 分 B. StORage ......
Codeforces Round 912 Div

qoj3542 Very Simple Sum 题解

题目链接 点击打开链接 题目解法 首先不知道 \(a_x+a_y+a_z+a_w\) 和 \(b_x\oplus b_y\oplus b_z\oplus b_w\) 肯定没法做,所以考虑求出和为 \(i\),异或和为 \(j\) 的方案数 考虑 \(x,y,z,w\) 都是在 \([1,n]\) 的 ......
题解 Simple 3542 Very qoj

CF1198题解

CF1198 Codeforces Round 576 (Div. 1) CF1198A link CF1198A题意 有一种数字化一段录音的常用方式,是记录每一个时刻的强度值。这些非负的强度值就可以代表一段音频 对于一段音频,若有 \(K\) 个不同的强度值,那么每一位我们都需要 \(k = \l ......
题解 1198 CF

[AGC052B] Tree Edges XOR 题解

题目链接 点击打开链接 题目解法 怎么感觉这场 \(B\) 比 \(C\) 思维量更大 考虑一步很妙的操作:把边权变成点权,以达到简化操作的目的 使每条边的边权为两端点的异或和,手画一下可以发现,操作简化成了交换两端点的点权 我们定义 \(d_{1/2,i}\) 定义为在 \(1/2\) 树上,\( ......
题解 Edges 052B Tree AGC

CodeForces 1900D Small GCD

洛谷传送门 CF 传送门 不是很懂官方题解在干嘛。 设 \(g_x\) 为满足 \(x \mid \gcd(a_i, a_j, a_k)\) 且 \(i, j, k\) 两两不同的所有无序三元组的 \(f(a_i, a_j, a_k)\) 之和。则很容易容斥求出 \(h_x\) 为 \(x = \g ......
CodeForces 1900D Small 1900 GCD

[Codeforces] CF1603A Di-visible Confusion

CF1603A Di-visible Confusion 题目 给一个长度为 \(n\) 的序列 \(a_1,a_2,\dots,a_n\),对于每个位置 \(i\),如果 \(a_i\%\left(i+1\right)\not=0\),就可以将 \(a_i\) 删掉。删掉之后,后面的数都会往前面移 ......

[Codeforces] CF1591C Minimize Distance

CF1591C Minimize Distance 题目 一条线上有 \(n\) (\(1 \le n \le 2 \cdot 10^5\))个仓库,第 \(i\) 个仓库的位置是 \(x_i\) (\(1 \le i \le n\))。 你有 \(n\) 箱货物,要分别运到这 \(n\) 个仓库里 ......
Codeforces Minimize Distance 1591C 1591

Educational Codeforces Round 52 E

提炼 显然我们可以把每一段拆开来单独考虑 我们该段有 A^len 选择 右边肯定只要不是相同 我们的集合就+1 Alen*(Alen -1) 当然要是相同也要算1 A^len 中间当然就是随便选啥都可以 void solve() { int n,m,A;cin>>n>>m>>A; vector<in ......
Educational Codeforces Round 52

Codeforces Round 908 (Div. 2) 补题C、D

Codeforces Round 908 (Div. 2) C. Anonymous Informant 思路 可以发现,每次操作后a数组的变化: \(a_1 a_2 a_3 a_4 ... a_x ... a_n\) \(->\) \(a_1\)\(_+\)\(_x\) \(a_2\)\(_+\) ......
Codeforces Round 908 Div

CF1684题解

CF1684 Codeforces Round 792 (Div. 1 + Div. 2) CF1684A link CF1684A题意 有一个用十进制表示的没有前导零的正整数 \(n\) 。Alice 和 Bob 正在用这个数玩一个游戏。Alice 先手,他们轮流进行游戏。 在她的这一轮中,Ali ......
题解 1684 CF

[AGC052C] Nondivisible Prefix Sums 题解

题目链接 点击打开链接 题目解法 好题! 一个序列是不合法的,必定满足某些结论,我们不妨猜测一下 首先如果和为 \(P\) 的倍数,必定不合法 然后手玩几个可以发现,最极限的情况是 \(P-1\) 个 \(1\;+\;\) \(b_i\; + \;\) \(P-b_i\) 如果在这个情况下再加一个 ......
题解 Nondivisible Prefix 052C Sums

CF689题解

CF689 Codeforces Round 361 (Div. 2) CF689A link CF689A题意 题目描述 迈克在海滩游泳时不小心将手机放入水中。他买了一个带有老式键盘的手机。键盘只有十个数字大小的键,位于以下方式: 1 2 3 4 5 6 7 8 9 0 联系人与他的旧手机一起消失 ......
题解 689 CF

Codeforces Round 883 (Div. 3)

Codeforces Round 883 (Div. 3) A. Rudolph and Cut the Rope 题意:有一颗糖果在连在绳子上,求剪短多少根绳子,他能落地 思路:只要绳子长度比钉子高度大就不用减 #include <bits/stdc++.h> using namespace st ......
Codeforces Round 883 Div

Codeforces Round 911 (Div. 2)

Codeforces Round 911 (Div. 2) 基本情况 A题秒了。 B题条件没想明白,也不造点数据就无脑交,导致罚了不少时。 B. Laura and Operations 我先推出了,对于一个数,当另外两个数的个数之和为偶数时解可行,且这个数本身要能跟后面数替换。 比如 1 1 2 ......
Codeforces Round 911 Div

P3295 [SCOI2016] 萌萌哒 题解

题目链接 点击打开链接 题目解法 暴力并查集 \(merge\) 肯定不可行 对于限制是 \(O(n^2)\) 的,查询却是 \(O(n)\),所以考虑均衡复杂度 可以用倍增的思想求解 令 \(fa_{i,j}\) 为 \([i,i+2^j-1]\) 的并查集数组,记录的是祖先的下标 这样限制不难做 ......
题解 P3295 3295 2016 SCOI

Educational Codeforces Round 157 (Rated for Div. 2)

目录D. XOR Construction Educational Codeforces Round 157 (Rated for Div. 2) D. XOR Construction 方法一: 由题得 $ b_{i + 1} = a_i \oplus b_i = \cdots = b_1 \op ......
Educational Codeforces Round Rated 157

CF1841C Ranom Numbers 题解

题意: 思路: 考虑修改同种字符: 如果要将其修改变大,修改最左侧的字符一定最优。 证明:将一个字符修改变大,自身的贡献可能增加或减少,其左侧的字符的负贡献一定增加,正贡献一定减少。考虑一左一右的两个同种字符,分别将其变大,其自身带来的贡献是相等的,但是修改靠右的字符,只会使左侧更多的字符的负贡献增 ......
题解 Numbers 1841C Ranom 1841

CF1843F1 Omsk Metro (simple version) 题解

题意: 维护一棵树,初始有一个编号为 $ 1 $ ,点权为 $ 1 $ 的根节点,后续进行 $ n $ 次操作,操作分为两种: $ + $ $ v_i $ $ x_i $ :表示添加一个点权为 $ x_i $ $ (x_i \in $ { $ -1,1 $ } $ ) $ 的节点,并使其与点 $ v ......
题解 version simple 1843F Metro

CF1648D Serious Business 题解

题目链接 点击打开链接 题目解法 先考虑朴素的 \(dp\) 不难发现有两个断点 \(x,y\) 是重要的,即 \([1,x]\) 在第 \(1\) 行,\([x,y]\) 在第 \(2\) 行,\([y,n]\) 在第 \(3\) 行 不妨枚举断点 \(y\),然后统计最优的 \(x\) 令 \( ......
题解 Business Serious 1648D 1648

CF1846E2 Rudolf and Snowflakes (hard version) 题解

题意: \(T\) \((\)\(1\) \(\le\) \(T\) \(\le\) \(10^4\)\()\) 组询问:是否存在一个满 \(k\) (\(k\) \(\ge\) \(2\)\()\) 叉树节点数恰好为 \(n\) \((\)\(1\) \(\le\) \(n\) \(\le\) \ ......
题解 Snowflakes version Rudolf 1846E

题解 P8061 [JSOI2016] 炸弹攻击1 - 数据加强版

本篇题解参考 @djwj223,但是本人太弱了,对着代码看了 INF 年才看懂。因此写一篇具体讲解实现方面的题解。在此先表示感谢。 思路 考虑最终的答案圆会是怎样的。第一种是半径达到了 \(R\) 的上界,不能继续扩充。显然这种情况可以把圆移动一下使某个点在圆上,以此进行计算。第二种是楼上所说的与两 ......
题解 炸弹 数据 P8061 8061

[Codeforces] CF1561C Deep Down Below

CF1561C Deep Down Below 时间限制:\(2s\) | 空间限制:\(1000MB\) 题面 题面翻译 \(T\) 组数据,每次给定 \(n\) 个任务,第 \(i\) 个任务给定 \(k_i\) 个怪物,每个怪物有一个能力值 \(a_{i,j}\) 你要按顺序把这 \(k_i\ ......
Codeforces 1561C Below 1561 Deep

Codeforces Round 910 (Div. 2)

https://codeforces.com/contest/1898 C题可以造一个大小为4的环,然后再造一个来回,这样就解决了%4=0,%4=2的情况,而奇数的情况显然无解。 #include<cstdio> #include<algorithm> #include<cstring> #incl ......
Codeforces Round 910 Div