Ynoi

P5309 [Ynoi2011] 初始化

题意 给定一个序列 \(s\),每次修改操作 \(x, y, z\)。 \(i \in [y, y + x, y + 2x, y + 3x, \ldots, y + kx]\),\(s_i = s_i + z\)。 区间查询 \(\sum_{i = l} ^ r s_i\)。 Sol 根号分治,很明 ......
P5309 5309 2011 Ynoi

P5311 [Ynoi2011] 成都七中

我永远喜欢数据结构。 题目传送门 给出 \(n\) 个点的树,点有颜色 \(a_i\)。有 \(q\) 次询问,每次询问给出 \(l,r,x\),求保留 \([l,r]\) 范围内的节点时,\(x\) 所在联通块中有多少种本质不同的颜色。询问之间相互独立。 不保留一个点的定义是,将这个点以及与其相邻 ......
P5311 5311 2011 Ynoi

P9058 [Ynoi2004] rpmtdq 题解

支配点对实在是太有意思了。 本质上就是一个合法的减枝。 思路 考虑维护树上路径问题。 容易想到点分治。 考虑在当前的分治中心 \(\text{rt}\),每个点到当前分治中心的距离为 \(dp_x\)。 求出每一组点对的贡献。 假设每个点对在距离长的那部分贡献,即 \(dp_i>dp_j\),求出所 ......
题解 rpmtdq P9058 9058 2004

P8528 [Ynoi2003] 铃原露露

一道很好的启发式合并题目。 思路 考虑一个事实。 我们想要求出对于每个点对不合法的情况。 例如现在考虑到了 \((x,y)\),它们的 \(\text{lca}\) 为 \(z\)。 有几种情况: \(a_x< a_z< a_y\),那么是合法的。 \(a_x< a_y< a_z\),那么包含 \( ......
P8528 8528 2003 Ynoi

P7907 [Ynoi2005] rmscne 题解

P7907 [Ynoi2005] rmscne 题解 退役前的最后一篇题解,献给 Ynoi。再见了各位。 题目大意 给定一个长度为 \(n\) 的序列和 \(m\) 次查询,对于每次查询,给定 \(l, r\),求出一个最短的子区间 \([l', r']\),满足所有在区间 \([l, r]\) 中 ......
题解 rmscne P7907 7907 2005

P7880 [Ynoi2006] rldcot

lxl 上课讲的题,来写个题解。 样例很强,赞美 lxl!青蛙,呱 ????。 \(\text{rldcot} = \text{range lca depth count on tree}\)。/yiw(猜的)。 题目传送门 给出一棵 \(n\) 个点的有根树。定义 \(\text{LCA}(x,y ......
rldcot P7880 7880 2006 Ynoi

「杂题乱写」Ynoi

分块,卡常,分块,卡常,分块,卡常,分块,卡常,分块,卡常,分块,卡常,分块,卡常,分块,卡常,分块,卡常,分块,卡常,分块,卡常,分块,卡常,分块,卡常,分块,卡常,分块,卡常,分块,卡常 ......
Ynoi

P5070 [Ynoi2015] 即便看不到未来

题意 给定一个序列,静态区间查询区间的长度为 \(1 \to 10\) 的极长值域连续段个数。 Sol 考虑离线下来跑扫描线。枚举右端点,维护每个左端点的答案。 不难想到,\(i\) 对 \(lst[i]\) 是没有贡献的,考虑右端点为 \(i - 1\),若此时的 \(l \le lst[i]\) ......
P5070 5070 2015 Ynoi

Ynoi2001 梦想歌

首先容易发现将原树自底而上建立 \(\texttt{kruskal}\) 重构树后,相当于要对原树进行单点修改,动态维护重链剖分一个点所在的重链底。由于单点修改不是单点加,和 \(\texttt{ZJOI 2018}\) 历史不同,所以切换次数不是 \(O(n \log n)\) 的,所以可以考虑不 ......
梦想 Ynoi 2001

P7880 [Ynoi2006] rldcot

P7880 [Ynoi2006] rldcot 题意 区间虚树数颜色。 题解 十分好的一道题目,绕来绕去又绕回最初的思路了。 首先考虑怎么写出 \(O(nq)\) 的暴力,显然就是扫描树上的每一个点,然后判断有没有点跨子树。 然后考虑到我们求的是虚树颜色数,所以考虑莫队,删除和插入都可以通过找前驱和 ......
rldcot P7880 7880 2006 Ynoi

[Ynoi2016] 镜中的昆虫

64MB,1.5s 题目描述 您正在欣赏 galgame 的 HS,然后游戏崩溃了,于是您只能做数据结构题了: 维护一个长为 \(n\) 的序列 \(a_i\),有 \(m\) 次操作。 将区间 \([l,r]\) 的值修改为 \(x\)。 询问区间 \([l,r]\) 出现了多少种不同的数,也就是 ......
昆虫 Ynoi 2016

P5309 [Ynoi2011] 初始化

题目传送门 本来不想写这道 \(shabi\) 卡肠题的,但还是写了。 分块+根号分治。 考虑对 \(x\) 的大小分类讨论: 若 \(x>=\sqrt{n}\),很明显最多只会加 \(\sqrt{n}\) 次,暴力加即可,用分块维护每个块内的 \(sum\),查询就直接散块加上整块即可。 若 \( ......
P5309 5309 2011 Ynoi

P8512 [Ynoi Easy Round 2021] TEST_152

题目传送门 先考虑没有区间限制怎么做,即执行完所有操作在询问全局和。用 \(set\) 维护连续段,就是珂朵莉树,写个模板即可。 加上区间限制呢?先将询问按照 \(r\) 排序。又因为还要维护每个 \(l\),就在颜色段上在记录加入时间。我们在时间维开个数据结构,简单的树状数组即可。时间复杂度 \( ......
P8512 Round 8512 2021 Easy

P8511 [Ynoi Easy Round 2021] TEST_68

题目传送门 看到异或最大值,根据套路不妨考虑 \(0-1 trie\)。 通过 \(trie\) 找到异或值最大的点对 \((x,y)\)。那么除了 \((x,y)\) 到 \(1\) 路径上的点之外,其他的点的答案就是 \((x,y)\) 的异或值。 接下来考虑怎么算出这 \((x,y)\) 到 ......
P8511 Round 8511 2021 Easy

P7710 [Ynoi2077] stdmxeypz 题解

P7710 [Ynoi2077] stdmxeypz 题解 我的第一道 Ynoi 题,体验感不高,调了大半天,最后发现有个地方 \(B_1\) 写成 \(B_2\) 了。 分析 树上问题,明显是要转到树下的,所以 DFS 序是一定要求的。 有关树上距离,所以 \(deep\) 数组也是一定要求的。 ......
题解 stdmxeypz P7710 7710 2077

Ynoi2012 NOIP2016 人生巅峰

Day \(\text{XXX}\)。 注意到修改是易于复合的立方操作,而且值域非常小,所以可以直接 \(O(v\log m)\) 预处理出对每个 \(i\in[0,v)\) 操作了 \(2^{j}\le m\) 次的结果,维护出每一位被修改了多少次,查询某一位的值直接倍增 \(O(\log m)\ ......
巅峰 人生 Ynoi 2012 NOIP

【莫队】【bitset】【数据分治】P5313 [Ynoi2011] WBLT 题解

P5313 看到值域比较,又支持离线,可以想到莫队和桶。 考虑先将桶按 \(b\) 分段,将每段分别进行按位与运算,做完第 \(i\) 段时用于运算的桶全都为 \(0\),就可以直接得到答案。这显然可以用 bitset 优化。但是 STL 的 bitset 不支持分裂操作,所以需要手写。 当 \(b ......
题解 数据 bitset P5313 5313

jiaxun ynoi

一天一道慢慢写着。因为菜所以一开始只有 easy round。 TEST_68 简化一下限制。注意到很多点都能取到最大值,具体的,若最大值为 \(x,y\) 处取到,那么只有 \(1\rightsquigarrow x,1\rightsquigarrow y\) 路径上的点取不到。而一条链是非常好做 ......
jiaxun ynoi

P5047 [Ynoi2019 模拟赛] Yuno loves sqrt technology II 题解

Description 给你一个长为 \(n\) 的排列,\(m\) 次询问,每次查询一个区间的逆序对数,强制在线。 link \(1\leq n,m\leq 10^5\)。 Solution 考虑分块。 首先如果 \(l,r\) 在同一个块内,可以对于每个块暴力二维前缀和预处理。 如果 \(l,r ......
模拟赛 题解 technology P5047 loves

P8512 [Ynoi Easy Round 2021] TEST_152

题外话 纪念一下第一道 Ynoi Easy Round.(上次那个是 Ynoi 模拟赛,什么时候才能做正统 Ynoi 啊/ll 在图老师的逼迫下换了洛谷博客的主题和背景,还挺好看的感觉。 原题传送门 题意 给定一个长度为 \(m\) 的序列,初始全为 \(0\)。再给 \(n\) 个区间赋值操作。 ......
P8512 Round 8512 2021 Easy

【Ynoi2018】天降之物

【Ynoi2018】天降之物 题意 给定一个长为 \(n\) 的序列 \(a\),支持两种操作: 将所有 \(a_p = x\) 修改为 \(y\)。 查询 \(\min(|i-j|)\),满足 \(a_i = x \and a_j = y\) 或者 \(a_i = y \and a_j = x\) ......
Ynoi 2018

P7907 [Ynoi2005] rmscne

题意 给定长为 \(n\) 的序列,\(q\) 次询问区间 \([l, r]\) 的最短区间 \([l', r']\), 满足所有在 \([l, r]\) 中出现的数也在 \([l', r']\) 中出现,你只需要输出 \([l', r']\) 的长度即可。 Sol 离线,然后枚举 \(r\)。 考 ......
rmscne P7907 7907 2005 Ynoi

YNOI 做题记

YNOI 做题记 偶然有一天做到了其中的一道题,于是便开始做相关的题了…… [Ynoi2015] 我回来了 - 洛谷 这之一场联考搬过来的题……于是考场上写了一个 \(O((n + m)\log^2 n)\) 的代码,然后成功被卡掉,非常慢速。 其实离线,将每一个伤害答案变化的时间做出来,然后加入时 ......
题记 YNOI

洛谷 P5068 [Ynoi2015] 我回来了

[洛谷传送门](https://www.luogu.com.cn/problem/P5068 "洛谷传送门") 这题 $O(n)$ 个人中有 $O(\frac{n}{\ln n})$ 种做法。 我们考虑 $L = R$ 怎么做。设 $p = L = R$,等价于找到一个最大的正整数 $k$,使得没有 ......
P5068 5068 2015 Ynoi

Ynoi2015 我回来了

介绍个最劣解 $O(m\sqrt n+n\sqrt n+n\alpha(n)\ln n)$ 做法。 首先令 $b_i\gets a_i-1$,区间 $[l,r]$ 的答案就是: $$r-l+1+\sum\limits_{k=l}^r\text{mex}_{i=l}^r\left\lfloor\fra ......
Ynoi 2015

「突刺贯穿第二分块」P4117 [Ynoi2018] 五彩斑斓的世界

很帅气! 分块在线转离线,考虑每个块对于询问的贡献。 维护块的 max 和 tag 分别代表最大值和减了多少。 先考虑整块, $max #define rep(i, l, r) for (int i = l; i = l; i --) /*\yhx12243/ 鱼大保佑*/ /*「突刺贯穿第二分块」 ......
五彩 世界 P4117 4117 2018

Ynoi 盼君勿望

## 1.1 前言 > 在太阳西斜的这个世界里,置身天上之森,等这场战争结束之后,等这场战争结束之后,人人本着正义之名,长存不灭的过去,逐渐消逝的未来,我回来了,纵使日薄西山,即使看不到未来,此时此刻的光辉,盼君勿忘,世界上最幸福的女孩 珂朵莉要永远幸福的呀~ [题目链接](https://www. ......
Ynoi

Ynoi2001 冷たい部屋、一人 题解

[$\text{link}$](https://www.luogu.com.cn/problem/P9337),这题太毒瘤啦!难写难调还略微卡常。 >谁爱卡常谁卡吧。反正我先贺为敬了。——引用自洛谷别人的提交记录 本人写了两天(两个 $case$ 各一天),调崩溃了才调出来,太毒瘤了! 看到颜色相同 ......
题解 Ynoi 2001

[Ynoi2010] y-fast trie(multiset+思维)

### [题目传送门](https://www.luogu.com.cn/problem/P6105) ## solution 妙妙题。 分成 $a+b\geq C$ 和 $a+b using namespace std; const int N = 5e5+7; multiset num,ans; ......
multiset 思维 y-fast Ynoi 2010

[Ynoi2016] 这是我自己的发明(根号分治+分块/莫队)

### [题目传送门](https://www.luogu.com.cn/problem/P4689) ## soltion 简单题 换根显然可以拆成 $O(1)$ 个区间,这里先不管。 直接做法是莫队,把双子树拆成 $dfs$ 序上的双前缀,可以直接莫队,但是常数比较大。 另一种做法是根分,对颜色 ......
根号 这是 Ynoi 2016