摘要: 浅谈 Trie 树 什么是 Trie 树? Trie 树,又称字典树,可用于存储单词。 Trie 树的根节点不表示任何字母,但是除了根节点的所有字母都表示一个字母。 任何一个单词,都可以用一条从根节点出发的路径表示。在路径的终点做一个“结束”标记,对应一个单词的结尾。 举个例子:要存储 work,w 阅读全文
posted @ 2024-01-16 09:53 WerChange 阅读(84) 评论(0) 推荐(0)
摘要: 浅谈基数排序 前言 注意,本贴的算法是基数排序而不是计数排序。这两者差别不大,但是存在着一定差异。 一句话做法 从低位到高位,每次都把所有要排序的数(含前导 \(0\))丢入相应的桶(\(0\)~\(9\)),再从小到大(对于桶的编号而言从小到大)取出来,一定次数后,原数组有序。 数据模拟 假如要对 阅读全文
posted @ 2024-01-15 22:09 WerChange 阅读(32) 评论(0) 推荐(0)
摘要: 超级简单的后缀数组(SA)!! 前言 这里选择当一手标题党。 由于刚学完这个字符串算法,本人字符串算法又比较薄弱,好不容易这一次在晚修看各种资料看得七七八八,决定趁脑子清醒的时候记录下来。 免得自己不久后忘了后又要痛苦地再看各种资料。希望这篇博客能帮到你。 前置知识:RMQ 问题、基数排序、lcp 阅读全文
posted @ 2024-01-14 22:00 WerChange 阅读(115) 评论(0) 推荐(0)
摘要: 题目跳转 Fake_Solution 前言 [warning]: 本题解的做法是错法,但是正确概率贼高。离谱的是正确率还可以叠加。 正解是记搜,时间复杂度可以证明。正解看文末。 思考 众所周知一个公式: \[a\times b=\operatorname{lcm}(a,b)\times \gcd(a 阅读全文
posted @ 2023-12-16 11:48 WerChange 阅读(41) 评论(0) 推荐(0)
摘要: 提供二分+DP做法。 Solution 题意 给出 \(n(\le 2\times 10^5)\) 个单调递增偶整数 \(a_i\),求最小的 \(k\) 满足每一个 \(i\) 都可以在 \(k\) 时刻之前(含)与相邻的数相遇。每个单位时间可以移动一个单位距离。 思路 启发式思考 在想到正解之前 阅读全文
posted @ 2023-12-04 20:14 WerChange 阅读(28) 评论(0) 推荐(0)
摘要: 题解 前言 个人认为官方题解写得最为详细、干净、清楚,如果有意向阅读外文版的题解的话,还是推荐去读一读: Editorial - AtCoder Regular Contest 117 本文属于转载(?),有一些自己的思考过程,希望有帮助。 题意 有多少个长度为 \(2N\) 的序列 \(A\) 满 阅读全文
posted @ 2023-11-24 17:28 WerChange 阅读(26) 评论(0) 推荐(0)
摘要: Success Rate (提供二分做法) 前言 听说是史上最简单蓝题,做了一下。 题意 已知 \(x,y,p,q\),通过只让 \(y\) 加 \(1\) 或 \(x,y\) 同时加 \(1\),使得满足: \[\frac{x'}{y'}=\frac{p}{q} \]思考 目标状态为 \(\fra 阅读全文
posted @ 2023-11-02 20:10 WerChange 阅读(43) 评论(0) 推荐(0)
摘要: CSP2023 总结 前言 这次 CSP2023 并没有考出水平。经过深刻反思,我总结了个人目前存在的一些问题与改进的方案。 上午 CSP-J 开始后,手忙脚乱地建好了目录文件、配置好了 DEV-C++ 的语法环境、切换好了 ENG 输入法。 T1 看到 T1 发现不如去年简单,有些慌张。 努力冷静 阅读全文
posted @ 2023-10-28 16:27 WerChange 阅读(144) 评论(1) 推荐(0)
摘要: 题意很清晰,直接跑 SPFA 求最短路。 只是我们在松弛操作时,需要注意从 \(u\) 是否可以到达 \(v\)。 怎么判断呢? 请移步下面三个部分。 Part 1 先解释一下,下面点 \(i\) 的信息分别为以下变量: color 表示颜色, 1 表示蓝色,0 表示紫色 num 表示初始状态持续时 阅读全文
posted @ 2023-08-22 21:12 WerChange 阅读(40) 评论(0) 推荐(0)
摘要: 01 分数规划 什么是 01 分数规划 用人话说,就是: 有 \(n\) 个玩意儿,每个都有两个属性 \((x,y)\)。现在要从中选出几个玩意儿,使得 \(\frac{\sum x}{\sum y}\) 最大 但是有些人仍然不懂。没关系,可以用数学语言表示: 有三个序列 \(x,y,z\) 长度为 阅读全文
posted @ 2023-08-14 21:07 WerChange 阅读(43) 评论(0) 推荐(0)