Loading

摘要: 我是谁:HNCS 一枚很菜的 OIer,常用 _Alexande_ 和以 wyb 开头的用户名。 题解:题解里的东西都很少,没有代码哦。由于人很菜,有没说明好的可以指出。 博客为什么上锁:可能涉及到私人秘密。脸滚键盘,一般有些密码为:_^=SV<ZWKKG_nL2Ij];383>^l,如果是错误的话 阅读全文
posted @ 2023-09-07 22:14 Alexande 阅读(201) 评论(3) 推荐(0)
摘要: 我们需要维护一个合并的结构处理这个东西,容易发现前两种操作就是并查集。 使用线段树合并维护答案,如果左儿子有结点但右儿子没结点就可以合并转移,容易说明是正确的。 提示我们对于下标的大小关系要转化到分治结构上进行思考。 阅读全文
posted @ 2026-07-14 11:53 Alexande 阅读(4) 评论(0) 推荐(0)
摘要: 首先我们根据 subtask 2,如果有相邻位置,直接查询可以在 \(\frac{3n}{2}\) 次操作内查询出所有位置. 我们初始查询出四个位置的相对大小关系,我们将说明我们始终可以通过两次操作确定出一个位置。 如果在一个间距里面,可以确定一个间距大小,否则,可以确定这个位置距离其相对距离大小。 阅读全文
posted @ 2026-06-30 20:06 Alexande 阅读(3) 评论(0) 推荐(0)
摘要: 根据鸽巢原理,元素 \(>31\) 个绝对有解。 否则,如果有两个集合 \(S, T\),其异或值相等,显然可以做到无交,那么必然可以取出 \(S, T\) 中的任意一个元素,其与剩下元素异或值相等,写个线性基暴力插入数即可。 阅读全文
posted @ 2026-06-16 20:57 Alexande 阅读(6) 评论(0) 推荐(0)
摘要: 和超级钢琴本质等价题。 首先前 \(k\) 大还是那个套路,对每个右端点考虑,先将能造成最大贡献的区间加进去,然后取出最大的将贡献往下递归一层,但是这需要让我们求区间异或上一个值第 \(k\) 大,这已经不是普通的可持久化 0/1 Trie 了,而且我还不会做。 那么超级钢琴有一个解决方案,就是这个 阅读全文
posted @ 2026-06-05 19:03 Alexande 阅读(10) 评论(0) 推荐(0)
摘要: 一种非常神奇的做法,刚开始以为是 DAG 直接规约追忆了。 首先我们倒着可以处理出哪些边会被干掉,也知道将一条边分割开后剩下连通块的信息。 那么我们进行逆启发式合并,维护一个每个连通块的 \(a\) 的 set,然后每次将小的那一边拿出来暴力做就是 2log 的了。 如果要做到 1log,初始对其进 阅读全文
posted @ 2026-06-04 19:22 Alexande 阅读(9) 评论(0) 推荐(0)
摘要: 发现第一问就是要求我们每次询问至少确定两个数,那么就从外往里面缩,每次都可以确定一个最小值和最大值。 第二问对区间内点数和有了要求,这要求我们分的区间不能太多,同时得尽量不交。 根据鸽巢原理,答案不会低于极差除以 \(n - 1\),所以按照这个分段进行查询即可,正好是 \(3n\) 次。 阅读全文
posted @ 2026-06-04 17:10 Alexande 阅读(8) 评论(0) 推荐(0)
摘要: 一个小巧思,同时我认为也是一个哲理上的东西。 两个事物同时存在,充要条件不是两个事物存在都能推出另一事物存在,而是两个事物存在都不能推出另一事物不存在。 当然,如果初始状态都是不存在,那么这话就得反过来说了。 阅读全文
posted @ 2026-06-04 15:05 Alexande 阅读(9) 评论(0) 推荐(0)
摘要: 两个区间等价本质上是每种数都有一种映射方式使得位置集合一样,并且得是个满射和双射. 那么用哈希求解一下即可,双指针先预处理出答案,就可以做线性了. 阅读全文
posted @ 2026-06-03 17:13 Alexande 阅读(11) 评论(0) 推荐(0)
摘要: 根据北京市赛的手法,这个询问可以求出一个数集内到底有没有出现三次的数。 然后二分三次即可。 阅读全文
posted @ 2026-06-02 15:37 Alexande 阅读(5) 评论(0) 推荐(0)
摘要: 给定若干个区间最小值,问逆序对个数最小是多少。 牛逼大了逆序对题,联考那题给我整无语了,就恶堕了。 根据仙人指路,我们先来想想特殊性质咋做。 A 性质,把能覆盖的覆盖完前面能填 \(0\) 就填 \(1\) 否则填 \(1\),因为越到后面填 \(1\) 吃的福比 \(0\) 更多。 B 性质,这是 阅读全文
posted @ 2026-06-02 14:46 Alexande 阅读(6) 评论(0) 推荐(0)
摘要: 化简式子,后面变成三个值相关的六个乘积项的形式。 将形式摊到三元环计数上,发现边只有 \(7 \times 10^5\) 个,那么跑个三元环统计贡献就好了,由于三元环个数本质 \(O(m \sqrt m)\) 量级,咋写都是对的,就是常数有点大。 阅读全文
posted @ 2026-06-01 18:47 Alexande 阅读(8) 评论(0) 推荐(0)
摘要: 显然直接做不会优于 \(O(nk^2)\),我们需要对字典序这个东西发掘一些更深的性质。 假设我们考察完 \([1, i]\) 中每个字符串 \(s\),设 \(f_{i, j}\) 为前 \(i\) 个字符串拼出长度为 \(j\) 的字符串最小字典序是多少,容易发现该状态有用当且仅当 \([i + 阅读全文
posted @ 2026-05-30 16:57 Alexande 阅读(13) 评论(0) 推荐(0)
摘要: 本来是非常 Ad-hoc 的一道题目,但是当我做过 Two tree 后就变得不那么妙了。 首先注意到要求出度入度权值差值很小,先考察欧拉回路,建一个超级源点,给所有奇数度数的点连边,那么跑欧拉回路,优先到一个点进来和出去的两条边一样即可抵消贡献,发现给新建的边附权为 \(1\),然后跑完之后必然可 阅读全文
posted @ 2026-05-28 18:30 Alexande 阅读(11) 评论(0) 推荐(0)
摘要: 这题凭啥简单啊? 中位数考虑设计 \(-1, 1\) 状态,但是一般我们都是搭配二分使用,只要求和 \(\ge 0\) 即可,但是这里需要得到中位数的充要条件,显然就不能这么马马虎虎。 那么一个区间 \([l, r]\) 的中位数为 \(c\),当且仅当: \([l, r]\) 中出现了 \(c\) 阅读全文
posted @ 2026-05-27 10:06 Alexande 阅读(11) 评论(0) 推荐(0)
摘要: 这道题有个逆天 trick,并且很常用,但是我看诸多题解都没有提到这一点。在 AT 的部分题目中也用到了这一点。 第一个想法就是换维扫描线,对着时间维度做显然不太可靠,想要处理区间尾接信息简直了,例如 PKUSC/WC 的某个题也是这样的做法,一般遇到这种不太能做的问题而且询问还是单点询问/形式比较 阅读全文
posted @ 2026-05-26 11:11 Alexande 阅读(8) 评论(0) 推荐(0)