11 2024 档案

该文被密码保护。
posted @ 2024-11-29 20:28 SkyMaths 阅读(0) 评论(0) 推荐(0) 编辑
该文被密码保护。
posted @ 2024-11-29 19:36 SkyMaths 编辑
该文被密码保护。
posted @ 2024-11-19 19:04 SkyMaths 阅读(0) 评论(0) 推荐(0) 编辑
摘要:考虑我们连续对 i 进行两次操作,于是可以将 aiai+1 同时加 k。 从左往右做,最后可能会使得 an1>an,但除此之外都满足限制,考虑再对 an2an1 做一次同时加 阅读全文
posted @ 2024-11-18 19:02 SkyMaths 阅读(6) 评论(0) 推荐(0) 编辑
摘要:考虑先写个暴力 O(n2m) 的输出一下结果,看一下 n = 4, 5, 6 的(尤其是 n = 6 的)结果,尤其是每个点像其余哪几个点连边,然后就想到了构造方案。 代码 const int N = 109; int n; int e[N][N]; void skymaths() { r 阅读全文
posted @ 2024-11-17 19:59 SkyMaths 阅读(5) 评论(0) 推荐(0) 编辑
摘要:阶段 1 考虑我们每次随机删除两个然后询问,若中位数为 n2,n2+1 称被删除的两个为基准数,用 v1,v2 代表。每次询问得到解的概率约为 12。 发现基准数一定一个 <n2阅读全文
posted @ 2024-11-16 16:10 SkyMaths 阅读(10) 评论(0) 推荐(0) 编辑
摘要:C 看错题了,是至少而不是恰好。 偶数就 1122... 这样,奇数考虑令 1 10 26 为颜色 1,23 和 27 为颜色 2,接下来的都是偶数长的区间。 D 相当于连双向边,我们只记录当前作为本质不同的代表的点,那么最容易被连边的就是左上角的点,我们记录一个单调栈即可,用并查集维护。 E 这个 阅读全文
posted @ 2024-11-16 07:51 SkyMaths 阅读(38) 评论(0) 推荐(1) 编辑
摘要:个人记录,可能存在一些错误或者问题。 好题。 这题和元旦激光炮有一点像,都是考虑根据给定的矩阵大小关系,在不确定某个位置具体值的情况下,把一定大于/小于答案的位置挖掉。 但是本题可以说是拓展了,因为它在确定的时候也递归成了一个子问题。 我们要找某个 n×m 矩阵(满足从左上到右下 阅读全文
posted @ 2024-11-14 16:58 SkyMaths 阅读(8) 评论(0) 推荐(0) 编辑
摘要:思路 构造,且上界并不是特别严格。/bx/bx/bx 首先加法比较“混合”,考虑转成位运算,具体地,钦定操作的 a,b 满足 a&b=0。 考虑递归成子问题,按照 popcount 分组,有一个关键观察是:我们在操作一个 a|b=c 的时候,可以将任意几个 \(d 阅读全文
posted @ 2024-11-13 19:47 SkyMaths 阅读(36) 评论(0) 推荐(0) 编辑
摘要:为什么 (nm)mod2=[m&n=m] 考虑 Lucas 定理,对于质数 p,有 \[\binom{n}{m}\bmod p = \binom{\lfloor n / p\rfloor}{\lfloor m / p\rfloor}\cdot \bin 阅读全文
posted @ 2024-11-13 19:31 SkyMaths 阅读(9) 评论(0) 推荐(0) 编辑
该文被密码保护。
posted @ 2024-11-13 09:36 SkyMaths 阅读(0) 评论(0) 推荐(0) 编辑
摘要:首先发现这个过程的限制比较多,那么考虑重新描述这个过程。 令 xi 表示在第 i 个物品上使用了 xi 张券,那么一组 x1n 就描述了一个方案。 方便起见,令 si 为前 i 个物品买完后剩了几张券,那么有: s0=m \ 阅读全文
posted @ 2024-11-12 20:49 SkyMaths 阅读(23) 评论(0) 推荐(0) 编辑
摘要:暴力做法/插头 DP 可过。 考虑 H×W200,所以 min(H,W)14,那么可以猜测可行状态数非常少(第一个随便,后面的只有两种可能,3213=24576),可以先把可行状态跑出来,不妨假设 WH。、 阅读全文
posted @ 2024-11-09 21:11 SkyMaths 阅读(297) 评论(0) 推荐(0) 编辑
摘要:多叉堆,和 另外一个 是好兄弟,在某些 dijkstra 中用于阳间地平衡复杂度。 本质上是控制堆的高度,用一个 V1k 叉树来维护堆,当元素的值减小时只需要 O(k),弹出最小值也只需要 O(k+V1k),当 k阅读全文
posted @ 2024-11-08 15:12 SkyMaths 阅读(32) 评论(0) 推荐(0) 编辑
摘要:就是把 [0,n] 中的数用某个 B 进制表示,B 满足 n<B3,然后记录 sum1k,i 表示(应该是)B 进制下下标以 i 为开头的数的和。 反正当 k=2 时就是经典的根号平衡操作——\(\mathcal 阅读全文
posted @ 2024-11-08 15:05 SkyMaths 阅读(18) 评论(0) 推荐(0) 编辑
该文被密码保护。
posted @ 2024-11-08 11:28 SkyMaths 阅读(0) 评论(0) 推荐(0) 编辑
摘要:简化代码 注意 hash 的值具有可加减的特性,可以极大程度的简化代码。 同时可以维护可能作为答案的 “匹配池” 中的 hash 值,这样就不用进行(超级 dirty work 的)树加减了。 树哈希是一种集合哈希(?),所以支持加减!!! hash 函数 我也不知道为什么大家都在用这个 hash 阅读全文
posted @ 2024-11-07 20:55 SkyMaths 阅读(9) 评论(0) 推荐(0) 编辑
摘要:大意就是用 vector 直接记录 无需显式建出叶向树,只需记录 fa。 dis 每个中只用记录 dep 个值,常数比 map 等小。 但是从上向下不太好做,加点删点是比较好做的。 void getsz(int u, int lst = 0) { mxsz[u] = 0; sz[u] = 1; fo 阅读全文
posted @ 2024-11-05 16:42 SkyMaths 阅读(5) 评论(0) 推荐(0) 编辑
摘要:前言 Update 2024.11.6 突然发现一个错误,应该是:只需要保证在加入 (i,A) 的时候,(i+1,A1) 已经有值了即可。 经过和 @gza 和 @ORzyzRO 的讨论应该会了这道题。谢谢你们。 前置知识:杨表基础知识,还有 Robinson–Sche 阅读全文
posted @ 2024-11-02 22:02 SkyMaths 阅读(163) 评论(0) 推荐(0) 编辑
摘要:FWT(A) \cdot FWT(B) 是点乘!!! 阅读全文
posted @ 2024-11-01 17:55 SkyMaths 阅读(5) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示