1754c cf c1

CF 580C- Kefa and Park, 1500 / 树的遍历 / 根节点到叶节点的路径上某性质的点不能连续超过 m 个

CF 580C- Kefa and Park 这个 1500 的题这么水? 这还不如 1200、1300 的思维题 我开始没考虑周全,这题给出的连边没有讲都是从父节点连向子节点,所有要建双边。 #include <iostream> #include <cstring> using namespac ......
节点 路径 性质 1500 Kefa

CF1797E 线段树 + 倍增 题解

Preface 有趣的一道 ds,赛后不看题解做出来了。 Solution 首先有一个性质:$\varphi(x)$ 经过 $\mathcal{O}(\log x)$ 次迭代后变为 $1$。 证明: 若 $x$ 为奇数,$\varphi(x)=x\sum_{i=1}^{k}\frac{p_i-1}{ ......
线段 题解 1797E 1797 CF

Text Editor (CF2E) (DP字符串2端分别dp)

思路: 首先贪心出性质, 通过模拟这个题意,一定是先右边弄完在去左边弄, 或者左弄完去右边弄, 于是左右2边分别dp一次 然后求和 dp[i][j],表示i 和 j 匹配的时的 最小操作次数 转移的时候有一个贪心结论,当 si != tj 时, 这个贡献时一个固定值, 正向:首先i- (公共的), ......
字符串 字符 Editor Text CF2E

CF1767F Two Subtrees

$\text{Solution}$ 高维莫队的一次尝试 最小众数似乎要求我们刻画能回滚的高维莫队 但这并不友好 修改有 $O(n^{\frac 7 4})$,询问只有 $O(n)$ 考虑友好的分块,那么就加个值域分块 询问便可以先得到众数的出现次数,然后逐块枚举找到存在众数的块,再在块中枚举数判断是 ......
Subtrees 1767F 1767 Two CF

CF 1820A-Yura's New Name, 800 / 思维 / ^-^ 或 ^^ 才合法

CF 1820A-Yura's New Name 处理方式 : 特殊情况提前判断 + 一般情况从首推到尾 #include <iostream> #include <cstring> using namespace std; const int N = 1e2 + 10; typedef long ......
思维 A-Yura 1820 Yura Name

CF1033G Chip Game 题解

传送门 CF1033G Chip Game 题目大意 有 $n$ 个石子堆,每堆有 $a_i$ 个石子。A 与 B 轮流取,A 每次只能取 $x$ 个,B 每次只能取 $y$ 个。 求对于所有 $x,y \in [1,m]$,A 必胜、B 必胜、先手必胜和后手必胜的数量。 $n \le 100,m ......
题解 1033G 1033 Chip Game

【题解】CF700E

Cool Slogans 给定一个字符串 $S$,要求构造字符串序列 $s_1,s_2,\ldots,s_k$,满足任意 $s_i$ 都是 $S$ 的子串,且任意 $i\in[2,n]$,都有 $s_{i-1}$ 在 $s_i$ 中出现了至少 $2$ 次(可以有重叠部分,只要起始、结尾位置不同即可) ......
题解 700E 700 CF

CF1810G The Maximum Prefix

题面传送门 挺好一题,综合了几种方法。 首先看到题会想到一个dp:设 $f_{i,j,k}$ 表示到了第 $i$ 个位置,历史前缀最大值为 $j$ ,当前前缀和为 $k$ 的概率,乘上期望就是答案。但是这个状态非常寄因为状态本身就有 $O(n^3)$ 了而且不易优化。所以我们需要另辟蹊径。 不妨假设 ......
Maximum Prefix 1810G 1810 The

CF 1195C-Basketball Exercise,状态机DP,1400

CF 1195C-Basketball Exercise 没怎么做过状态机 dp, 这个简单的题目甚至开始甚至搞出三维来。 #include <iostream> using namespace std; const int N = 1e5 + 10; typedef long long LL; / ......
C-Basketball Basketball Exercise 状态 1195

CF题解

E. Replace the Numbers 1900 思维 https://codeforces.com/problemset/problem/1620/E 题解:正着做比较困难,我们可以考虑从后往前做。一个数会被变成什么样子是取决于其后的2操作。2操作可以等价为一个变换,而位置越后的2操作相较前 ......
题解

CF449D Jzzhu and Numbers

CF449D Jzzhu and Numbers 黄金定律:给定序列求答案,但答案与序列顺序无关的题目,要么考虑把序列转权值序列,要么对序列排序。 二进制题按大小排序看起来就没啥用,那就转成权值序列。即,设 $c(i)$ 表示 $i$ 在 $a$ 中的出现次数。同时设 $V$ 为 $a$ 的值域。 ......
Numbers Jzzhu 449D 449 and

CF 1360E-Polygon,1300,思维题

CF 1360E-Polygon 如果一个 1 不是在最右边或最下边,则一定有一个 1 在他的紧邻着的下边或右边,否则不合法。 太妙了。 #include <iostream> using namespace std; const int N = 1e2 + 10; int T, n; char a ......
E-Polygon 思维 Polygon 1360 1300

cf-div2866-D

题目链接:https://codeforces.com/contest/1820/problem/D 比赛的时候读错题了,没看见他切一刀之后会把其中一个放进盒子里(也就是不能再切了)。 思路:首先原来的大矩形的其中一边肯定在盒子里的小矩形的其中一边里(也就是说答案最多只有两种),我们先找出最大的长和 ......
cf-div 2866 div cf

CF做题小记

资历太浅,没法给出什么高质量的内容( 本博客所记录的题目最低难度是 Div.2 的 C 题。 1.CF1768C. Elemental Decompress 显然,按照最大值从小到大排序之后会轻松很多。基本思路是这样,首先优先将第一个排列的值赋为最大值,然后选取第二个排列中能够使用的最小值。如果第一 ......
小记

CF题解

D. Guess the Permutation 2000 逆序性质 二分 https://codeforces.com/contest/1589/problem/D 题解:首先我们可以二分查找i的位置:当1->x逆序对>0,则在i右,否则在左,log(n)次询问。找到i的位置后,我们发现逆序对有如 ......
题解

CF 1526B I Hate 1111, 1400

I Hate 1111, 1400 数论题应该要有一个重要思想:打表。这题我可以打表发现 1099 之后的数是连续出现的。 赛瓦韦斯特定理:a, b 为大于 1 的正整数, gcd(a, b) = 1, ax + by = c, 最大使得方 程无正整数解的数为 c = ab - a- b。 ......
1526B 1526 1111 1400 Hate

CF 476B Dreamoon and WiFi

Dreamoon and WiFi 一个简答的组合数学题。开始想弄一个很妙的做法,但是我理解不了,或者说理解困难,半天没搞出来,然后试着还是用朴素好想的做法做吧,结果马上做出来了。 选择朴素的做法时还是有个地方想不清楚,分类讨论 + 举例一下子清楚了。 ......
Dreamoon 476B WiFi 476 and

CF1646E Power Board 题解

题目链接:https://codeforces.com/contest/1646/problem/E 题目大意: 有一个 $n \times m$ 的矩阵,其中第 $i$ 行第 $j$ 列的格子中的数字是 $i^j$。 问:矩阵中存在多少个不同的数? 解题思路: 可以很明显地发现,第 $1$ 行的数 ......
题解 1646E Board Power 1646

CF1728D

博弈论dp模板题 首先我们可以先确定dp状态 dp[round][L][R][0/1]表示第round轮,现在字符串为[L~R],上一轮的人取了左边还是右边 然后发现round是可以由字符串L~R确定而来的,因为每一轮只删除一个数,因此可以优化round这维 我们令dp[L][R][0/1]=1为  ......
1728D 1728 CF

《TCP IP网络编程》读书笔记 附PDF #C1

《TCP/IP网络编程》是一本介绍TCP/IP协议栈及其在网络编程中的应用的经典教材,由尹圣雨和金国哲合著。我在阅读这本书时感受非常深刻,下面就来分享我的读后感。 首先,我想谈谈这本书的结构。整本书共分为十二章,包括了从TCP/IP协议栈的基础知识、网络编程基础到实际应用案例的详尽讲解。每一章都明确 ......
网络编程 笔记 网络 TCP PDF

CF R866 div.2

A 当一个"_ "的右边没有“^”时,答案增加,发现这对于中间的序列是充分必要的。 当位置 $1$ 为 "_"时,我们必须在其前面加一个"^";当整个字符串为 "^"时,特判一下答案。 B 发现给定01串当全是“1”时,我们直接输出 $nn$。考虑一般的情况,我们发现将面积表示出来 $S=a+b,a ......
R866 866 div CF

CF题解

D. AB Graph 2000 构造 https://codeforces.com/problemset/problem/1481/D 题解:由于只有两种边,我们可以枚举较小结构的特性并循环来构造整体解。对于任意两个点,[u->v,v->u]只有4种情况,对于[1,1],[0,0]直接得解,可以循 ......
题解

CF1816F Xor Counting - dp - 分治 -

题目链接:https://codeforces.com/contest/1816/problem/F 题解: 一道有趣的题。 首先发现 $m=1$ 和 $m\geq 3$ 时结论是平凡的。$m=1$ 时结论显然,下面讨论一下 $m\geq 3$ 时: 首先可以构造 $[x, (n-x)/2, (n- ......
Counting 1816F 1816 Xor CF

CF1815C

1 解法 设 $f_i$ 为 $i$ 最多出现多少次,那么一个限制 $(u,v)$ 可以写成 $f_u \leq f_v +1$,把 $f$ 看做最短路中的 $dis$ 数组,上面的式子就是在图上连一条从 $u$ 到 $v$ 边权是 $1$ 的边,由于边权都是 $1$,所以可以直接用 $\text{ ......
1815C 1815 CF

题解 CF1090D【Similar Arrays】

一道简单构造题。 如果 $m=\frac{n(n-1)}{2}$,此时任意两个数都要有偏序关系,但是又要求第二个数列有两个数相等,因此无解。 否则一定有解。不难想到构造两个数列使它们几乎完全相等。可以找到两个没有偏序关系的下标 $(i,j)$,在第一个数列中分别赋值为 $n-1,n$,在第二个数列中 ......
题解 Similar Arrays 1090D 1090

训练记录-cf-di2-866(A-C)

手速场 但是wa了两发 血亏 上蓝了 纪念一下( 不过我还是菜鸡 什么都不会orz A. Yura's New Name 题意:要形成^^或者^_^的笑脸 最少加多少个^ 思路:特判单个^输出1 单个_输出2 首是_ +1 尾是_ +1 其次计算连续的__ ans加上cnt-1个 #include< ......
cf-di 866 A-C cf di

「解题报告」CF1129D Isolation

水题,但是调了好久 qwq 显然是 DP,出现次数显然分块,那就数据结构优化 DP 呗。 我们可以维护出当前点到每个点这段区间内有多少个出现次数为 $1$ 的数,这个右端点每拓展一位修改的左端点一定是连续的区间。分块维护这个东西,如果是散块暴力重构暴力加,如果是整块那给整块打个加标记。 发现,加标记 ......
Isolation 报告 1129D 1129 CF

CF1592F2 题解

题意 传送门 给定一个 $n$ 行 $m$ 列的目标矩阵,矩阵元素只有 W 或 B ,并且你有一个初始矩阵,元素全为 W 。 现在你可以矩阵实施以下操作: 使用一块钱,选定一个包含 $(1,1)$ 的子矩阵,把矩阵中的元素全部反转( W 变 B , B 变 W )。 使用三块钱,选定一个包含 $(n ......
题解 1592F 1592 CF F2

「解题报告」CF983E NN country

水点简单数据结构题! 考虑从两个点开始往上跳,每次肯定尽可能跳到最浅的点。两个点跳到再跳一步就能到达 lca 的位置的时候,此时再看看有没有路径连接这两个点,如果有那么一步就可以跳到,否则就要跳到 lca 再跳一步,两步跳到。跳的过程显然可以用倍增处理。 然后我们考虑处理出每个点能跳到的最浅的点。假 ......
country 报告 983E 983 CF

题解 CF1764G Doremy's Perfect DS Class (Extra)

题解 CF1764G Doremy's Perfect DS Class (Extra) 题意 交互库有一个 $1\sim n$ 的排列 $p$,你每次可以想交互库给定三个整数 $l,r,k(1\le l\le r\le n,1\le k\le n)$,交互库会返回 $\lfloor p_l/k\r ......
题解 Perfect Doremy 1764G Class