1830d tree mex cf

ICPC2022Xian L Tree 题解

Link ICPC2022Xian L Tree Question 给出一个根为 \(1\) 的树,需要将树分成几个块每个块,一个块中的节点需要满足以下条件中的一个: 对于所有的 \(u,v \in S,\ u \neq v\) ,满足 \(u \in subtree(v)\) 或 \(v \in ......
题解 ICPC 2022 Xian Tree

未出现的最小非负整数(MEX)

典题合集 前置芝士 [Set做法] struct Mex {//自定义N的大小 int cnt[N];//cnt(i)表示数字i出现的次数 set<int> st;//记录未出现的数字 multiset<int> mulst;//记录出现过的数字 Mex() { for (int i = 0; i ......
整数 MEX

【题解】CF1621G Weighted Increasing Subsequences

常规,但不常规。 思路来自 @gyh. 思路 BIT 优化计数。 本来考虑的是对 LIS 进行计数,得到一个对 \([]\) 形式的值套三层求和的方式,然后再瞪眼找优化方法,但是没有发现什么好的处理方法,于是只能考虑转换计数方法。 考虑通过每个位置对答案的贡献计数。假设某个位置 \(x\) 被一个合 ......

CF1876D Lexichromatography 题解

题目链接 点击打开链接 题目解法 首先第二个条件等价于同一种权值红蓝交错填 可得不考虑第三个条件的方案数为 \(2^{cntcol}\),其中 \(cntcol\) 为出现过的颜色数量 考虑红蓝是等价的,所以 \(p>q\) 的方案数 \(=\) \(p<q\) 的方案数 所以我们只需要计算 \(p ......
题解 Lexichromatography 1876D 1876 CF

CF1900D - Small GCD 题解

1900D - Small GCD 给定序列 \(A\),定义 \(f(a, b, c)\) 为 \(a, b, c\) 中最小的次小的数的 \(\gcd\),求: \[\sum_{i = 1}^n \sum_{j = i + 1}^n \sum_{k = j + 1}^n f(a_i, a_j, ......
题解 1900D Small 1900 GCD

CF1886B Fear of the Dark

这道题只有两种情况:\(O\) 点和 \(P\) 点都在同一个圆圈里;或者 \(O\) 点在一个圆圈里,\(P\) 点在另外一个圆圈里。 让我们用 \(d(P,Q)\) 来表示 \(P\) 点到 \(Q\) 点之间的距离,\(R\) 记为半径。 我们先来看第一种情况:\(O\) 点和 \(P\) 点 ......
1886B 1886 Fear Dark the

CF992E Nastya and King-Shamans

题意 给定一个序列 \(s\),记其前缀和序列为 \(g_i\),\(q\) 次修改。 每次修改后输出任意满足 \(s_i = g_{i - 1}\) 的解。 Sol 前缀和数组,每次答案使 \(s_i \times 2\)。 也就是答案的个数不会超过 \(log\)。 再想,\(s_i - g_{ ......
King-Shamans Shamans Nastya 992E King

CodeTON Round 7 Div. 1 + 2 (CF1896)

终于把 agc 交了。 A. Jagged Swaps 模拟即可。 B. AB Flipping 显然全是 \(\texttt{B}\) 的前缀和全是 \(\texttt{A}\) 的后缀都动不了。 答案是最后一个 \(\texttt{B}\) 的位置减第一个 \(\texttt{A}\) 的位置。 ......
CodeTON Round 1896 Div CF

「杂题乱刷」CF1534C

题目链接 CF1534C Little Alawn's Puzzle 题意简述 给定两个排列 \(a,b\),你可以进行的操作为交换一列中的两个数字,你需要求出操作后能够满足没有相同数字在同一行的数阵能的个数并对 \(10^9+7\) 取模。 解题思路 我们先举两个例子: 1 2 3 4 5 1 2 ......
1534C 1534 CF

CF1009F Dominant Indices

题意 给定一棵树,求每一棵子树内距离跟最小的节点数最多的深度。 \(n \le 1e6\) Sol dsu 板子。 我们先考虑那个 \(n ^ 2\) 的 dp。 对于每一个节点 \(x\),用 \(f_i\) 表示当前在 \(x\) 子树内深度为 \(i\) 的节点有多少个。 求最大值用一个变量 ......
Dominant Indices 1009F 1009 CF

如何动态展开el-tree的某个子节点

需求: 当添加文件夹或者表单时展开该节点 addChildDirectory(node, data) { this.$nextTick(() => { // 重命名时展开改文件夹 this.$refs.tree.store.nodesMap[data.id].expanded = true; }); ......
节点 个子 el-tree 动态 tree

CF1901F Landscaping

题意大概就是给你 \(n\) 个点\((0, a_0), (1, a_1), \cdots, (n - 1, a_{n - 1})\) ,用一根直线 \(l\) 覆盖这些点,要求所有点都在这条直线 \(l\) 之下,设 \(y_0, y_1\) 分别为 \(l\) 与 \(x = 0, x = n ......
Landscaping 1901F 1901 CF

CF1423G Growing flowers

我永远喜欢数据结构。 洛谷 CF 给出长度为 \(n\) 的序列 \(a_1\sim a_n\),有 \(q\) 次操作: \(1\texttt{ }l\texttt{ }r\texttt{ }c\),对于 \(i\in [l,r]\),执行 \(a_i\leftarrow c\)。 \(2\tex ......
Growing flowers 1423G 1423 CF

CF1168D

传送门 description 给定一棵有根二叉树,每条边有一个字符或特殊字符,特殊字符可以和任意字符相等。如果这棵树树根到每个叶子结点经过边的字符构成的字符串每个重排后都相同,则这棵树是可以重排的。每个字符的重排度为其在所有可能的使树可重排的安排特殊字符的方案中该字符出现次数的最大值,记做 \(f ......
1168D 1168 CF

CF1901E Compressed Tree(树dp)

Problem 题目地址 Solution 来自fcy大佬的思路 记 \(f_u\) 表示假定以 \(u\) 为根的子树,在压缩后,(子树内的某一个点(包括 \(u\)))可以向外(除\(u\)为根的子树外所以点的集合)连一条边时的最大 \(sum\)。换言之,我们把树拆成 以\(u\)为根的子树( ......
Compressed 1901E 1901 Tree CF

CF1901 B Chip and Ribbon 题解

Link CF1901 B Chip and Ribbon Qustion 初始有 \(n\) 个格子,刚开始每个格子都是 \(0\) ,Monocarp 刚开始在一号格子中,并使得 \(a[1]+1\),每一轮,Monocarp 可以进行两个操作 操作 1 ,Monocarp 移动到下一个格子, ......
题解 Ribbon 1901 Chip and

CF1864H Asterism Stream

首先讲点正常想的到的做法。 首先转化成:计数 * + * + * * + * * 的序列,要求在序列最后一个操作后恰好 \(\ge n\),每个序列的贡献是 \(\frac{1}{2^{len}}\)。 枚举总共有多少个 *;枚举最后一个 + 之后有多少个 *。 这样,最后一个 + 的贡献是确定的, ......
Asterism Stream 1864H 1864 CF

【题解】CF1550E Stringforces

标签:DP \(B^+\) 阅读须知:本题解较为详细地讲述的该题解法的思路和来龙去脉,但篇幅较长,请耐心阅读。 Step 1 从题面获取信息 我们考虑,因为最大值最小,所以我们首先想到二分答案。 然后我们又看到 \(k \leq 17\) 这个限制,所以会想到可能是关于一个 \(2^k\) 之类的复 ......
题解 Stringforces 1550E 1550 CF

ABC330 E Mex and Update 题解

Link ABC330 E Mex and Update Question 给一个数组 \(a\),有 \(Q\) 次修改 每次把 \(a_i\) 改成 \(x\) 问每次修改后,不在 \(a\) 数组中的最小非负数时多少 Solution 记录每个 \(a_i\) 出现的次数 \(num\) 每个 ......
题解 Update ABC 330 Mex

[ABC321E] Complete Binary Tree

思路:第一次先把往后距离为 $k$ 的点算出来,然后再每次往前走一个,考虑 $k-i$ 的情况。(具体见代码注释)。 代码: ```cpp#include <bits/stdc++.h>using namespace std;// headint sum[100],head=0;int n,x,k; ......
Complete Binary 321E Tree ABC

CF1599H Hidden Fortress

看到很多是用二分的解法,这题其实可以这用 **$4$** 次查询得到结果。 我们只需要用两次查询就可以找到地方基地矩阵的一条边的中点。 先询问 $d1=query(1,1)$ 和 $d2=query(1,10^9)$。 就可以求出 $y_m=\frac{1+10^9+d1-d2}{2}$。 之后再询 ......
Fortress Hidden 1599H 1599 CF

CF1854A1 Dual (Easy Version)

如果你是没有思路,但是还是想自己做出来,以下有几个提示(请看完一个提示之后,再想不出来再看接下来的提示)。 ## 提示1 > 对于 easy version,有多种解决方案。不管是哪种解决方案,请思考:怎样得到 $a_i \le a_{i+1}$? ## 提示2 > 举个例子,你可以试着使用序列中的 ......
Version 1854A 1854 Dual Easy

CF1900 D Small GCD 题解

Link CF1900 D Small GCD Question 定义 \(f(x,y,z)=\gcd(a,b)\) ,其中 \(a,b\) 为 \(x,y,z\) 中较小的那两个数 给出数组 \(a\),求 \[\sum\limits_{i=1}^n \sum\limits_{j=i+1}^n \ ......
题解 Small 1900 GCD CF

CF1900 C Anji's Binary Tree 题解

Link CF1900 C Anji's Binary Tree Question 给出一个树,每个节点上有一个字母 L/R/U ,从 \(1\) 号根节点开始,L 表示接下来走到左节点,R 表示接下来走到右节点,U 表示接下载走到父节点 问,最少修改几个节点上的字母使得从根节点走到叶子节点 Sol ......
题解 Binary 1900 Anji Tree

Top Tree

总归要学的。 先写一下理解比较困难的点。 考虑 SATT 的建立过程:首先在树里面找到一个Compress Tree,这个树满足中序遍历写下来是根簇路径深度从小到大排列,然后根簇路径上挂着的小簇Rake起来,这个 Rake 的过程是容易的,考虑对于每一个直接连接的小簇,把他变成子问题,然后给一个代表 ......
Tree Top

从一次前端公共库的搭建中,深入谈谈tree shaking相关问题

项目背景 随着业务的积累,前端项目之间逐渐会产生许多可以跨项目复用的逻辑或组件。比如对前端数据库 indexedDB 的封装、对 fetch 请求进度和中断请求功能的扩展、以及可能会在多个项目使用的 react 和 vue 组件。当前已经有一个公共库专门用来收敛 js 的逻辑复用,但是随着相同技术栈 ......
前端 shaking 问题 tree

CF1900 B Laura and Operations 题解

Link CF1900 B Laura and Operations Question 给出 \(1,2,3\) 的个数 \(a,b,c\) 可以分别减少两个不同的数,增加一个与两个数都不同的数 问,是否能经过一些操作使得 就剩下 \(1\) 或 \(2\) 或 \(3\) Solution 先考虑 ......
题解 Operations Laura 1900 and

CF1900 A Cover in Water 题解

Link CF1900 A Cover in Water Question 给出一个 \(n\) 个格子,有些格子被堵塞了,有些格子是空的,我需要在进行一些操作,使得所有空的格子里面都有水 操作 1:给任意一个格子装上水 操作 2:把一格水从一个地方搬运到另外一个空的格子里 如果一个空的格子的相邻的 ......
题解 Cover Water 1900 CF

[Codeforces] CF1799B Equalize by Divide

序列操作(divide.cpp)—CF1799B—1200 题目描述 给您一个 \(a_1,a_2,\dots a_n\) 这样的正整数数组,您可以对它进行多次(可以是零次)这样的操作: 选择两个索引 \(i,j(1 \leq i,j \leq n,i \neq j)\); 将 \(a_i\) 赋值 ......
Codeforces Equalize Divide 1799B 1799

[Codeforces] CF1747C Swap Game

游戏(game.cpp)—CF1747C—1200 \(时间:1s \space |\space 空间:250MB\) 题面翻译 Alice 和 Bob 两个人在玩游戏。 有一个长度为 \(n\) 的序列 \(a\),Alice 和 Bob 两人轮流完成一个操作,Alice 先开始。 每个人可以将数 ......
Codeforces 1747C 1747 Swap Game