rounding maximum 1857b cf
CF 杂题集1 2200~2400
upd on 2023.11.02 初稿 upd on 2023.11.04 修正部分表达 感觉这一套题质量都很不错,有比较好的思维难度,又不是特别难(当然,对于我来说很难),而且有一些比较好的思路和套路。 题目链接均为洛谷链接。 CF1474D Cleaning 摘要: 性质:考虑端点,发现一定可 ......
Educational Codeforces Round 157 (Rated for Div. 2)
Preface 懒狗闪总好久没打CF了,而且桂林回来后也没摸过键盘了,今天打的那叫一个手生 本来都不知道今天晚上有比赛,后面ztc叫我打我想着反正不熄灯就小号摆着打 最后赛后10min写出E题就很难受,感觉状态正常点就能出5个题了(或者来个2h15min的场就好了) A. Treasure Ches ......
Educational Codeforces Round 157 (Rated for Div. 2)
A. Treasure Chest 分类讨论一下,只有两种情况。 走到钥匙处,然后走到箱子处 走到箱子处,移动箱子,走到钥匙处,走回箱子处 对于第二种情况可以直接枚举箱子被移动到的位置 #include <bits/stdc++.h> using namespace std; #define int ......
CF1842G
第一次听没听懂,补个笔记。弄懂这种奇妙拆贡献后感觉非常厉害。 答案的形式为:\(\prod (a_i + k \cdot v)\),这些 \(v\) 是前面的操作带来的影响。 我们考虑一个个加入这个 \((a_i + k \cdot v)\),并且维护很多个等价类,使得这个值可以根据分开等价类的那个 ......
Educational Codeforces Round 157 (Rated for Div. 2) D. XOR Construction
题目链接 题意 给你 \(n-1\) 个整数 \(a_1, a_2, \dots, a_{n-1}\) 。 你的任务是构造一个数组 \(b_1, b_2, \dots, b_n\) ,使得: 从 \(0\) 到 \(n-1\) 的每个整数都在 \(b\) 中出现一次; 对于从 \(1\) 到 \(n ......
CF1866D Digital Wallet 题解
Problem - 1866D - Codeforces Digital Wallet - 洛谷 不妨为选数钦定一个顺序:不同行之间无影响,列从左到右取一定不劣。 设计状态:设 \(dp_{i,j}\) 表示前 \(i\) 次操作操作到第 \(j\) 列的最大答案 转移:因为对于同一列不互相影响, ......
CF DP 题乱做(续更)
CF566F $1500$ 容易考虑到 $n^2$ 做法:设 $dp_i$ 为第 $i$ 个数选的答案,对于排好序的序列,枚举前面的数 $a_j$,如果 $a_j|a_i$ 就转移,时间复杂度易知 $O(n^2+n\log n)$。 由于 $a$ 至于很小,延续刚才的思路,设 $dp_i$ 为选值为 ......
CF1866M Mighty Rock Tower 题解
Problem - 1866M - Codeforces Mighty Rock Tower - 洛谷 先考虑一个 \(O(n^2)\) 的 dp 设计状态: \(dp_i\) 表示搭 \(i\) 层的期望 转移:\(dp_i=dp_{i-1}\times(1-P_i)+\sum\limits_{j ......
Codeforces Round 855 (Div. 3) G. Symmetree AHU树哈希
(https://codeforces.com/contest/1800/problem/G) 题目如下: 大意是:给定一颗以1为根节点的树,然后判断这棵树是不是对称的。这里使用AHU算法进行树哈希,在递归的时候对每一个子节点为根的子树求出一个编号,然后在map里面记录。通过判断子树的编号是否一样来 ......
CF1245D Shichikuji and Power Grid 题解
Problem - D - Codeforces Shichikuji and Power Grid - 洛谷 首先这题显然不可能是 dp 我们发现第二个式子是困难的,但题目竟然给 \(n \leq 2000\) ,因此我们考虑抽象建图。我们把两个点的贡献两两建成一张图,最终的答案显然是把这个图划分 ......
[CF914F] Substrings in a String(字符串的暴力匹配)
题目:[CF914F] Substrings in a String 这个题是这样的: 给你一个字符串 \(s\),共有 \(q\) 次操作,每个都是下面两种形式的一种。 1 i c:将字符串 \(s\) 的第 \(i\) 项变为字符 \(c\)。 2 l r y:求字符串 \(y\) 在字符串 \ ......
CF练习题18
这次的题都是什么怪物!!! Short Colorful Strip 因为 \(n=m\),所以最终的形态一定是 \(n\) 的一个排列。 根据题意,发掘几个性质: 一个区间染色,一定最先对其中颜色最小的染色。 染色要求覆盖的点颜色完全相同。 对于第一次来说,先找到颜色为 \(1\) 的点,位置是 ......
CF827D Best Edge Weight 题解
Problem - 1867D - Codeforces Cyclic Operations - 洛谷 差一点就想出来了 首先 \(b_i\) 构建出来的肯定是一个章鱼森林,而且手玩一下样例就会发现我们每次要找到一个大小为 \(K\) 的环后让里面的点重新指向,一直重复这些操作直到所有点都被找到。 ......
CF1821F
传送门 solution 对于一个确定的树木种植位置方案 \(\{x\}\),我们规定树木优先向左侧倒下。 枚举有 \(p\) 个树木向右倒,然后我们要求每个向右倒的树木左侧不能有连续 \(k\) 个空格。设 \(f_{i}\) 表示有 \(p\) 个树木向左倒,恰好有 \(i\) 个能向左倒的树木 ......
CF1837E
这是一道非常有意思的题。 设 \(n\) 为当前队伍数量。 下面对于每个队伍的“数值”不是编号,而是能力。(比如说这时编号为 \(1\) 的队伍能力为 \(n\))。 思路清晰的,我们发现在初始状态下,每两格一组,每组之间是互相独立的。然后我们当前已经确定了一些队伍的位置,只知道这些发现很难去计算答 ......
CF1861D
废话: VP 时 T3 思路不清晰,写了很久,然后这题没时间做了,赛后五分钟 AC 了(还好不是正赛,不然我会气死的)。 所以做题前思路一定要清晰且严谨! 思路: 观察这个问题,发现如果 \(l\) 到 \(r\) 不是单调的,那么完全没必要一起乘。 那么本题中的操作将会一整段一整段的进行,我们肯定 ......
CF580E Kefa and Watch 题解
花了一个半个下午+半个晚上终于调出来了...... 0. 题面 长度为 \(n\) 的字符串,每个字符是 \(\mathtt{0} \sim \mathtt{9}\) 的数位,\(m + k\) 种操作: 格式为 1 l r c,表示将 \(l \sim r\) 赋值为 \(c\),保证 \(0 \ ......
Codeforces Round 906 (Div. 2) Doremy's Drying Plan E1.&E2
传送门 先考虑\(E1\) 只需要删除两条线使得不被覆盖的点数最多。 观察到点数只有\(200000\) 那么我们完全可以先将被至少\(3\)条线覆盖的点删掉。 考虑枚举一条线,枚举这条线覆盖的点寻找另外一条线覆盖这些点中的最大值,然后再找没覆盖这些点之外的线的最大值即可。 复杂度容易证明是线性的。 ......
CF773A Success Rate 题解
Success Rate (提供二分做法) 前言 听说是史上最简单蓝题,做了一下。 题意 已知 \(x,y,p,q\),通过只让 \(y\) 加 \(1\) 或 \(x,y\) 同时加 \(1\),使得满足: \[\frac{x'}{y'}=\frac{p}{q} \]思考 目标状态为 \(\fra ......
CF 随机做题
CF1884 2C 假设咱们钦定在 \(x\) 处取到最大值,则对于任意线段 \(i\),若 \(i\) 覆盖点 \(x\),则选中她会使得 \(\max a \leftarrow \max a + 1\),\(\min a \leftarrow \min a + y\),\(y \in \{0, ......
CF1868B2 Candy Party (Hard Version) 题解
Problem - 1868B2 - Codeforces Candy Party (Hard Version) - 洛谷 相信大家已经看过 Simple Version ,这题和上题不同之处就在于如果 \(b_i = 2^x\) ,他可以被分解成 \(2^x\) 或 \(2^{x+1}-2^x\) ......
CF227A Where do I Turn? 题解
题目大意: \(A\),\(B\) 在一条直线上。\(B\),\(C\) 在一条直线上你从 \(A\) 走到了 \(B\) 去 \(C\),问现在应该是直走、左转、还是右转。 思路: 分类讨论:分别求 \(A\) 到 \(B\),\(B\) 到 \(C\) 是什么方向,然后可得 \(A\) 到 \( ......
CF333B题解
分析 发现只能跳 \(n - 1\) 次,所以每个点一定是畅通无阻地抵达终点,所以有障碍的行和列放不了,并且每一个行或列最多放一个。 因为同时跳,思考会不会跳到一起,发现如果不在正中间可以将起点放到另一头就不会跳到一起,如果在正中间就一定会跳到一起,所以正中间的行和列加一起最多只能放一个。 代码 # ......
CF333A题解
分析 被除数一定,除数越小,商越大,所以选择合法的最小 \(3_{x}\)。 枚举指数即可,复杂度 \(\mathcal{O(\log_{3}w)}\),\(w\) 为值域 \(1e18\),可以通过本题。 代码 #include <iostream> #define int long long u ......
Educational Codeforces Round 134 (Div.2) D 题解
题目链接 D. Maximum AND 题目大意 给定两组序列 \(a\) \(b\),长度为 \(n\) ,现有一新序列 \(c\),长度也为 \(n\) 。 其中,\(c_i = a_i \oplus b_i\) 。 定义 \(f(a,b) = c_1\&c_2\&……\&c_n\)。 现在你可 ......
Educational Codeforces Round 128 (Rated for Div. 2)
添加链接描述 C题显然二分0的数量,然后双指针,算一下前缀和后缀1的数量即可。 #include<cstdio> #include<algorithm> #include<cstring> #include<cmath> #include<map> #include<vector> #include ......
TheForces Round #24 (DIV3-Forces)11.1
TheForces Round #24 (DIV3-Forces) A - Banis and Cards 思路:不大于n的m的倍数的和 #include<bits/stdc++.h> using namespace std; #define int long long //#define int ......
CF1868B1 Candy Party (Easy Version) 题解
Problem - 1868B1 - Codeforces Candy Party (Easy Version) - 洛谷 喵喵题。首先每个数最终肯定变成 \(\overline a\) ,如果 \(\overline a\) 不是整数显然无解。 然后记 \(b_i=a_i-\overline a\ ......
CF743C Vladik and fractions
大胆拆开,变成两个 \(\frac{1}{n}\),令 \(z=n\),那么 \(\frac{1}{x}+\frac{1}{y}=\frac{x+y}{xy}=\frac{1}{n}\)。 注意到分母是乘积,分子是和,可以令 \(x,y\) 的单位为 \(n\)。设 \(x=kn\),那么 \(x+ ......
Codeforces Round 906 (Div. 2)
Codeforces Round 906 (Div. 2) 比赛链接 A. Doremy's Paint 3 题目链接 判断给定的数组是不是满足a1+a2=a2+a3=a3+a4=......=an-1+an A思路: 这个题一开始没有读仔细问题,导致一时间出错了,后来读清楚问题之后发现其实这个数组 ......