摘要: 前言 后缀数组(Suffix Array,简称 SA)是一种解决某些字符串问题的常用工具。解决这些字符串问题时,经常用后缀数组对问题进行一定的转化成其它的模型,然后套用那个模型的解决方法加以解决原问题。 附题单 约定 本文做以下约定: 本文撰写时间跨度较大,有些符号会出现正体、斜体混用的情况,请读者 阅读全文
posted @ 2024-07-31 19:00 蒟蒻·廖子阳 阅读(62) 评论(0) 推荐(1) 编辑
摘要: 我永远喜欢数据结构。 题目传送门 给出长度为 \(n\) 的排列 \(a_1\sim a_n\),\(m\) 次询问有多少对 \([l,r]\) 满足 \(L\le l\le r\le R\) 且 \(\forall \,i\in [L,R],a_i\in[X,Y]\)。 \(n,m\le 2\ti 阅读全文
posted @ 2024-03-01 21:30 蒟蒻·廖子阳 阅读(25) 评论(0) 推荐(0) 编辑
摘要: 前言 树链剖分(简称树剖)是一种将树剖分成若干链维护信息解决问题的思想。本文讲的是其中的重链剖分,着重介绍较为基础的内容,旨在帮助初学者更好地理解并掌握。 附题单 求 LCA 定义(斜杠表示本文中对其可能有多种表示方法): \(d_u/dep_u\) 为点 \(u\) 的深度(到根的边数)。 \(s 阅读全文
posted @ 2023-11-06 16:00 蒟蒻·廖子阳 阅读(204) 评论(0) 推荐(1) 编辑
摘要: 0x01 前言 序列分治作为一种常见的解决序列问题的算法,有着许许多多的广泛应用。下至普及,上至 NOI,都能看见它的身影。 今年 S 组第一轮完善程序 T2 就考了序列分治,虽然对于那个问题来说分治并不是最优解,但是笔者从中学到了一种序列分治的写法。这也是本文的灵感来源。 本文主要介绍较为基础的序 阅读全文
posted @ 2023-11-06 16:00 蒟蒻·廖子阳 阅读(166) 评论(1) 推荐(1) 编辑
摘要: 0.前言 整体二分算法在一定程度上推翻了本蒟蒻之前学习的一些内容、颠覆了本蒟蒻的认知、打开了全新世界的大门。故本蒟蒻认为有必要写个博客记录一下。 1.问题引入 1.1 有一道非常简单的题目: 例一、求区间内第 \(k\) 小的数 给出 \(a_1\sim a_n\),求 \(a_l\sim a_r\ 阅读全文
posted @ 2023-11-06 15:59 蒟蒻·廖子阳 阅读(47) 评论(0) 推荐(0) 编辑
摘要: cnblogs 纪念一下第一道独立切的 \(\color{maroon}*3500\)。 不过这种萌萌套路题是怎么 \(\color{maroon}*3500\) 的?虽然第一次见的时候感觉比较厉害,但这题是我第四次见这个套路,就觉得很板了。 值得注意的是,本题解中的做法不需要用到任何十级算法,且空 阅读全文
posted @ 2024-04-02 01:24 蒟蒻·廖子阳 阅读(29) 评论(0) 推荐(0) 编辑
摘要: 我永远喜欢数据结构。 大家好,我喜欢暴力数据结构,所以使用分块通过了此题。 \(\color{maroon}*3400\) 是你的谎言。我觉得这题远大于 CF1608G 啊。 洛谷题目传送门 CodeForces 题目传送门 给出 \(n\) 个点的树,第 \(i\) 条边上有字母 \(c_i\)。 阅读全文
posted @ 2024-03-23 14:40 蒟蒻·廖子阳 阅读(23) 评论(0) 推荐(0) 编辑
摘要: 我永远喜欢数据结构。 貌似是此题中第一个使用 SA + 分治 + 二维数点做法的题解? 题目传送门 给出字符串 \(s\) 和常数 \(g\),求出有多少四元组 \((l_1,r_1,l_2,r_2)\),满足 \(s[l_1,r_1]=s[l_2,r_2]\) 且 \(r_1+g+1=l_2\)。 阅读全文
posted @ 2024-03-17 10:45 蒟蒻·廖子阳 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 我永远喜欢数据结构。 UVA1502 / SP9941 给出 \(n\) 个字符串 \(s_1\sim s_n\),第 \(i\) 个字符串有权值 \(w_i\)。选出一个子序列 \(a_1\sim a_k\),满足 \(\forall\,i\in[1,k),a_i<a_{i+1}\) 且 \(s_ 阅读全文
posted @ 2024-03-10 14:53 蒟蒻·廖子阳 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 我永远喜欢数据结构。 不会 SAM,来一个大常垃圾 SA 做法。 题目传送门 给出 \(n\) 个文本串 \(s_1\sim s_n\) 和 \(m\) 个询问串 \(t_1\sim t_m\)。 称一个字符串 \(\text{str}\) 是“\(L\) 熟悉的”,当且仅当 \(|\text{st 阅读全文
posted @ 2024-03-09 22:26 蒟蒻·廖子阳 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 给出长度为 \(n\) 的数组 \(a_1\sim a_n\)。有 \(q\) 次操作,\(3\) 种类型: \(1\space l\space r\space x\),对于 \(i\in[l,r]\),执行 \(a_i\leftarrow \max(a_i,x)\)。 \(2\spac 阅读全文
posted @ 2024-02-24 21:58 蒟蒻·廖子阳 阅读(52) 评论(0) 推荐(0) 编辑
摘要: 我永远喜欢数据结构。 P5356 由乃打扑克加强版。看了神仙 @5k_sync_closer 的题解发现 \(len\le 10\) 可以忽略,是不是爆标了!5k 好闪,拜谢 5k! 果然根号数据结构照样可爱。 题目传送门 给出 \(n\) 个点的有根树,定义一个点的深度为它到根简单路径上的边权和。 阅读全文
posted @ 2024-02-21 17:36 蒟蒻·廖子阳 阅读(21) 评论(0) 推荐(0) 编辑
摘要: 我永远喜欢数据结构。 lxl 大毒瘤!开写到 AC 耗时 \(5\) 天的大毒瘤题,期间学习了神仙@云浅知处的思路。他修改部分的代码也帮助我找到锅 AC,膜拜云浅! 本题是 CF1045J Moonwalk challenge 的加强版,码量超过 \(6\text{ KB}\),作为一名对读者负责人 阅读全文
posted @ 2024-02-19 21:04 蒟蒻·廖子阳 阅读(19) 评论(0) 推荐(0) 编辑