随笔分类 -  数学

摘要:这题分三步:葺网(期望)、淀粉质(点分治)、蓉翅(容斥),再佐以芬芳团(FFT),一道巨难无比的 luogu 黑题就诞生了。 期望 先考虑在淀粉树上,\(i\) 点在 \(j\) 点的子树里的概率。实际上这个问题的每种情况相当于是 \(n\) 个点的各种排列方式。这也就相当于,我们在选择 \(j\) 阅读全文
posted @ 2025-01-18 21:25 长安一片月_22 阅读(17) 评论(0) 推荐(0)
摘要:容易发现: \[E_i=\sum_{j=1}^{i-1}\frac{q_j}{(i-j)^2}-\sum_{j=i+1}^n\frac{q_j}{(i-j)^2} \]不妨设 \(a_i=q_i,b_i=\dfrac 1{i^2}\): \[E_i=\sum_{j=1}^{i-1}a_jb_{i-j 阅读全文
posted @ 2025-01-18 14:57 长安一片月_22 阅读(10) 评论(0) 推荐(0)
摘要:看名字,然后准备转化为多项式乘法。 \[c_k=\sum_{i=0}^{n-k-1}a_{i+k}b_i \]将 \(a\) 反转,得: \[c_k=\sum_{i=0}^{n-k-1}a_{n-i-k-1}b_i \]这已经是多项式乘法的格式了,直接多项式乘法,最后对函数 \(c\) 的 \(0\ 阅读全文
posted @ 2025-01-18 11:55 长安一片月_22 阅读(14) 评论(0) 推荐(0)
摘要:注:由于发现 FWT 解决的问题和 FFT,NTT 差别有点大,加之 FMT 的存在,本文就只解决 FFT 和 NTT,剩下两个放在别的算法总结里讲。 多项式一向是算法竞赛中相当博大精深的东西,作为一个蒟蒻,我将会以最大的努力完成这篇记录,以防自己以后看不懂qwq。 FFT(快速傅里叶变换) FFT 阅读全文
posted @ 2025-01-18 11:01 长安一片月_22 阅读(33) 评论(0) 推荐(0)
摘要:学原根发现拔山盖世算法忘光了,干脆一块儿写了吧。 \(BSGS\) 算法 \(BSGS\) 算法,又名拔山盖世算法、北上广深算法。他解决的问题如下: 求解最小的可行的 \(k\),满足 \(a^k\equiv b(\bmod p)\),其中保证 \(\gcd(a,p)=1\)。 容易想到暴力枚举,时 阅读全文
posted @ 2025-01-17 11:26 长安一片月_22 阅读(27) 评论(0) 推荐(0)
摘要:事实证明物竞笔记是个好东西,可惜没带,不然还能谎称自己会一点求导和微积分。 顺便在这里把比较经典的一些关于求导的东西记录一下: 常用函数求导: \(C'=0,(x^n)'=nx^{n-1},(\log_ax)'=\frac 1{x\ln a}\) \((\ln x)'=\frac 1x,(a^x)' 阅读全文
posted @ 2025-01-09 09:27 长安一片月_22 阅读(15) 评论(0) 推荐(0)
摘要:首先发现 \(p_x\times dis(x,y)+q_x\) 异常像是能斜率优化的样子,那先把求 \(f_x\) 的式子写出来(下设 \(d_x\) 表示 \(x\) 到根的距离): \[f_x=\min_{lca(x,y)=y,y\ne x}(p_x\times(d_x-d_y)+q_x+f_y 阅读全文
posted @ 2024-12-23 08:59 长安一片月_22 阅读(17) 评论(0) 推荐(0)
摘要:\(xor\) 最大值想到线性基,路径想到 \(lca\) 和树链剖分,由于没有修改用 \(lca\) 就可以。先用处理 \(fa\) 数组的方式处理倍增线性基(自然是得用线性基合并的),在求 \(lca\) 时把所有线性基全部合到一块儿就行。 考虑到本题实际上核心在于让路径上的线性基数量 \(\l 阅读全文
posted @ 2024-12-16 09:32 长安一片月_22 阅读(45) 评论(0) 推荐(0)
摘要:考虑不联通的情况。图不好做,就造一棵生成树出来,由于是无向图,所以只有树边和返祖边。 发现在一条树边断开后,生成树会分成两个连通块,由覆盖这条树边的返祖边链接,只有这些返祖边也全部断开,原图才会不联通。 想到异或的优良性质。我们给所有返祖边在 \([0,2^{63})\) 中随机一个值作为这条边的权 阅读全文
posted @ 2024-12-15 15:06 长安一片月_22 阅读(12) 评论(0) 推荐(0)
摘要:不得不说这题的确挺苟的。 注:下述“引理”表示: 对于长度为 \(n\) 的数组 \(V\),其线性基为 \(B\),定义 \(c_v=\bigoplus\limits_{a\in v}a\),\(num_k=\sum\limits_{v\subseteq V}[c_v=k]\),则 \(\fora 阅读全文
posted @ 2024-12-14 17:54 长安一片月_22 阅读(21) 评论(0) 推荐(0)
摘要:一、概念 线性基实际上就是维护了一个数组 \(p\),满足 \(p_i\) 在二进制下的最高位为第 \(i\) 位。 二、实现 现在我们有一个数组 \(a\),我们要构造他的线性基 \(p\)。 每次插入 \(a_i\) 时,我们都从高位往低位遍历,用以寻找第一个空位插入它。当然,我们也不能直接把原 阅读全文
posted @ 2024-12-14 11:21 长安一片月_22 阅读(23) 评论(0) 推荐(0)
摘要:因为要求本质不同的图,容易想到群论。 为了方便处理,将边是否存在转化为边的黑白染色问题(实际上就是 \([SHOI2006]\) 有色图 的弱化版本,最终公式也差不多)。 根据 \(Burnside\) 引理和 \(Polya\) 定理,将问题转化为:对于每种置换方案,有多少个边的等价类。 考虑对于 阅读全文
posted @ 2024-12-14 09:29 长安一片月_22 阅读(16) 评论(0) 推荐(0)
摘要:本文有着大量的感性理解,或没有证明的性质。鄙人尚菜,还请各位看官多多包涵。 一、置换 实际上可以理解为对集合的每个元素一个新的标号,满足这个标号集合与原集合一一对应。 如集合 \(X=\{x_1,x_2,\dots,x_n\}\),他的置换就可以表示为:\(\sigma=(_{x_{p_1}\ \ 阅读全文
posted @ 2024-12-08 19:59 长安一片月_22 阅读(45) 评论(0) 推荐(0)
摘要:有点水了…… 考虑相邻的不能放在一起,不相邻的可以,那么很容易想到转移方程: \[dp_{i,j}=\sum_{k=0}^{25}dp_{i-1,k}[j,k不相邻] \]其中 \(dp_{i,j}\) 表示填了 \(i\) 位,最后一位填 \(j\)。 那结合数据范围,显然矩阵快速幂。 时间复杂度 阅读全文
posted @ 2024-10-14 19:41 长安一片月_22 阅读(20) 评论(0) 推荐(0)