数学
文章平均质量分 87
litble
Away From OI已久,一天天变菜中,博客平时不咋看,也没能力答疑和改错了,因此不会互动见谅orz
展开
-
【数学】平摊分析与动态表问题
平摊分析与动态表问题原创 2022-04-10 10:55:20 · 1220 阅读 · 4 评论 -
【数学】整数线性规划问题与对偶单纯形法
整数线性规划问题与对偶单纯形法原创 2022-04-03 17:48:06 · 2309 阅读 · 0 评论 -
【数学】线性规划问题与不单纯的单纯形
讨论线性规划问题,以及求解线性规划问题的单纯形算法的入门,略过了比较繁琐的数学计算。原创 2022-04-03 10:01:35 · 713 阅读 · 0 评论 -
任意模数FFT:MTT
前言注明:本文litble写给自己以后复习用,只是梳理,不做证明,学习MTT推荐下面这篇博客。感谢这位dalao->hereMTT将每个系数拆成a+bMa+bMa+bM的形式,将原来的一个多项式写成两个多项式。则(a1+b1M)(a2+b2M)=a1a2+a1b2M+b1a2M+b1b2M2(a_1+b_1M)(a_2+b_2M)=a_1a_2+a_1b_2M+b_1a_2M+b_...原创 2018-12-06 20:22:07 · 931 阅读 · 0 评论 -
关于反演的一些归纳总结
感谢boshi大佬!!!您tql!!!什么是反演?假设我们手头有个函数FFF(准确的说是数列,因为一般只有整数自变量有用),通过某种变换HHH,可以得到函数GGG。可现在我的手头只有函数GGG,得寻找一种变换H−1H^{-1}H−1,使得GGG在做过这种变换之后能够获得FFF,这个过程就称之为反演。莫比乌斯反演在litble还是个傻逼的年代 (虽然现在也是个傻逼),曾经写过一篇讲莫比乌斯...原创 2018-12-21 22:01:24 · 5517 阅读 · 0 评论 -
51nod 1355 斐波那契的最小公倍数 Max-Min容斥+莫比乌斯反演
题目分析首先有一个结论:gcd(fib(ai))=fib(gcd(ai))gcd(fib(a_i))= fib(gcd(a_i))gcd(fib(ai))=fib(gcd(ai)),可以尝试使用辗转相减球gcd的方法证明一下。(boshi:可以证,但没必要)然后lcmlcmlcm是个什么玩意呢?对于一个指定的质因数ppp,假设aia_iai的质因数ppp的次数为cic_ici,则他们的...原创 2018-12-24 19:53:58 · 253 阅读 · 1 评论 -
loj2271/洛谷P3784/bzoj4913 [SDOI2017]遗忘的集合 生成函数+MTT+多项式求ln
题面分析对于集合内的数iii,考虑取多少个它,生成函数为∑j=0infxij=11−xi\sum_{j=0}^{inf} x^{ij}=\frac{1}{1-x^i}∑j=0infxij=1−xi1。设ti∈[0,1]t_i \in[0,1]ti∈[0,1]表示集合里是否存在数字iii,则fff对应的生成函数就是:F(x)=∏i=1n(11−xi)tiF(x)=\prod_{i=1}^...原创 2019-01-04 15:08:23 · 696 阅读 · 0 评论 -
五边形数定理与拆分数
只做梳理,不做证明 (因为不会证)五边形数图片摘自百度百科。可以发现,gi=gi−1+3(i−1)+1g_i=g_{i-1}+3(i-1)+1gi=gi−1+3(i−1)+1,所以通向就是gi=i(3i−1)2g_i=\frac{i(3i-1)}{2}gi=2i(3i−1)而广义的五边形数,iii的取值为0,1,−1,2,−2,3,−3...0,1,-1,2,-2,3,-3......原创 2019-01-15 21:46:58 · 1526 阅读 · 0 评论 -
bzoj3684 大朋友和多叉树 拉格朗日反演
拉格朗日反演如果对于幂级数F(x)F(x)F(x)和G(x)G(x)G(x),有G(F(x))=F(G(x))=xG(F(x))=F(G(x))=xG(F(x))=F(G(x))=x,则称F(x)F(x)F(x)和G(x)G(x)G(x)互为复合逆。记[xi]F(x)[x^i]F(x)[xi]F(x)为F(x)F(x)F(x)的iii次项系数,以此类推,对于这样的F(x)F(x)F(x)和G(x...原创 2019-02-08 17:04:00 · 247 阅读 · 0 评论 -
bzoj1488 [HNOI2009]图的同构 Polya定理
首先,这道题可以看做将边用两种颜色(存在和不存在)染色…然后我就想起了我的远古文章,想当年,我还是个对Polya定理一知半解的小蒟蒻,时过境迁,如今我已经变成了一个完全不知道Polya定理是什么东西的大蒟蒻了。具体的可以去看那篇文章,我梳理一下这个模型。两端点都在大小为LLL的同一个点循环节中的边循环节数量为⌊L2⌋\lfloor \frac{L}{2} \rfloor⌊2L⌋,在大小为...原创 2018-10-24 21:07:41 · 276 阅读 · 0 评论 -
HDU4624 Endless Spin Min-Max容斥+DP
题目分析朋友,你听说过Min-Max容斥吗?所谓Min-Max容斥就是这样一个式子:E(max(S))=∑T⊂S(−1)∣S∣+1E(min(T))E(max(S))=\sum_{T \subset S} (-1)^{|S|+1}E(min(T))E(max(S))=∑T⊂S(−1)∣S∣+1E(min(T))。所谓的max,就是集合内最后一个被选中的元素被选中的期望代价,min就是第一个被...原创 2018-10-10 21:57:54 · 470 阅读 · 0 评论 -
loj2183/洛谷P3321/bzoj3992 序列统计 原根+NTT
题目分析哎呀原根这个东西忘得差不多了…=。=对于PPP的剩余系的原根ggg,用gk mod Pg^k \bmod{P}gkmodP可以表示PPP的剩余系中的所有数。原根的定义是,对于一个群GGG,单位元为eee。将满足ad=ea^d = ead=e的最小正整数ddd记作aaa的阶,也就是ord(a)ord(a)ord(a...原创 2018-10-06 20:24:11 · 244 阅读 · 0 评论 -
拉格朗日乘数法
题目在无穷大的水平面上有一个平面直角坐标系。N-1条垂直于x轴的直线将空间分为了N个区域。你被要求把(0,0)(0,0)(0,0)处的箱子匀速推到(x,y)(x,y)(x,y)。箱子受水平面的摩擦力与正压力正相关,所以在每个区域的摩擦力可以表示为fifif _ i那么,你把箱子推到目的地做的最小功是多少呢?(不考虑改变速度时的做功)拉格朗日乘数法所谓拉格朗日乘数...原创 2018-09-08 16:10:18 · 1320 阅读 · 0 评论 -
二次剩余
引言我们在研究多项式开根的时候,想到了一个问题,若常数项不为1,那么怎么开根呢? 这就涉及到二次剩余。 那么什么是二次剩余呢?若在模ppp意义下,存在一个xxx,使得x2≡a(modp)x2≡a(modp)x^2 \equiv a \pmod{p},则称aaa为xxx关于aaa的二次剩余。若不存在这样的xxx,则称aaa为非二次剩余。 现在我们知道了aaa,要求解xxx,怎么办呢?p...原创 2018-09-08 16:08:02 · 1349 阅读 · 0 评论 -
多项式全操作小讲 COGS2189 帕秋莉的超级多项式
乘法戳我求逆戳我开根戳我求导将多项式AAA求导,求导结果是BBB,则Bi=(i+1)Ai+1Bi=(i+1)Ai+1B_i=(i+1)A_{i+1}积分将多项式AAA积分,积分结果是BBB,则Bi=Ai−1iBi=Ai−1iB_i=\frac{A_{i-1}}{i}求ln...原创 2018-08-17 08:20:58 · 420 阅读 · 0 评论 -
loj6017/bzoj4161 线性齐次递推多项式取模优化
显然强大的Rayment已经讲得很清楚了:这里 因为这东西我可能明天就忘了,所以写一下。 大概就是构造一个多项式g(x)=xk−∑ki=1aixk−ig(x)=xk−∑i=1kaixk−ig(x)=x^k-\sum_{i=1}^ka_ix^{k-i}(aaa是美丽的转移系数)。对于线性齐次递推的转移矩阵AAA,设有An−k+1=g(A)p(A)+r(A)An−k+1=g(A)p(A)+r(A)...原创 2018-08-17 21:04:29 · 496 阅读 · 0 评论 -
bzoj3028 食物 生成函数+广义二项式定理
首先我们有一些函数推收敛式的套路。比如对于y=1+x+x2y=1+x+x2y=1+x+x^2 ,我们知道xy=x+x2+x3xy=x+x2+x3xy=x+x^2+x^3,所以有xy−x3=y−1xy−x3=y−1xy-x^3=y-1,即y=1−x31−xy=1−x31−xy=\frac{1-x^3}{1-x}。用类似的方法,我们还可以知道∑infi=0=11−x∑i=0inf=11−x\sum_{...原创 2018-08-12 19:50:02 · 673 阅读 · 0 评论 -
bzoj3265 志愿者招募加强版 线性规划与网络流(费用流)
题目分析设SiSiS_i为第iii天可以工作的志愿者的种类集合,xjxjx_j为第jjj种志愿者招募的个数,那么我们可以得到若干形如: ∑j∈Sixj≥ai∑j∈Sixj≥ai\sum_{j \in S_i} x_j \geq a_i 的式子。我们添加变量yiyiy_i使得原式变成: yi+∑j∈Sixj=aiyi+∑j∈Sixj=aiy_i+\sum_{j \in S_i} x_j =...原创 2018-08-11 07:51:56 · 759 阅读 · 0 评论 -
伯努利(Bernoulli)数学习笔记
伯努利数的指数型生成函数为B(x)=∑i=0Bii!xi=xex−1B(x)=\sum_{i=0} \frac{B_i}{i!} x^i=\frac{x}{e^x-1}B(x)=∑i=0i!Bixi=ex−1x由此可得B0=1,B1=−12,B3=16,B4=0,B5=130...B_0=1,B_1=-\frac{1}{2},B_3=\frac{1}{6},B_4=0,B_5=\frac...原创 2019-02-16 15:15:09 · 1567 阅读 · 0 评论 -
洛谷P5206/loj2983 [WC2019]数树
今年年初,我将继续扮演爆零士,Q1Q2双爆零,弘扬爆零文化,希望大家多多资磁。这位大佬写的题解真是精妙啊->here问题0记mmm为颜色种类,T1T_1T1为树1的边集,T2T_2T2为树2的边集,那么答案就是mn−∣T1∩T2∣m^{n-|T_1 \cap T_2|}mn−∣T1∩T2∣,用个map哈希一下即可。问题1基本推导T1T_1T1已经给定了,T2T_2T2...原创 2019-02-13 11:38:41 · 447 阅读 · 0 评论 -
bzoj4911/洛谷P3781 切树游戏 动态DP+FWT
题目分析dalao tql暴力DP设f(x,k)f(x,k)f(x,k)表示深度最浅点为xxx的连通块,价值为kkk的有多少个。那么对于xxx,在遍历儿子前f(x,vx)=1f(x,v_x)=1f(x,vx)=1。对于每个儿子yyy,都有转移:f′(x,k)=f(x,k)+∑i=0m−1f(x,i)f(y,k−i)f'(x,k)=f(x,k)+\sum_{i=0}^{...原创 2019-02-24 22:29:55 · 447 阅读 · 0 评论 -
codeforces 917D Stranger Trees 矩阵树定理+拉格朗日插值
题目分析把原树连成完全图,在原树中的边边权为xxx,否则为111。假设一棵生成树的权值是该生成树中所有边的权值之积,若我们将所有生成树权值相加,那么xkx^kxk的系数就是含有kkk条原树边的树的个数。现在我们假设边权代表这条边有多少重边,那么总生成树个数就是原来定义的生成树权值之和。总生成树个树可以用矩阵树定理求。设x=1,2,3...nx=1,2,3...nx=1,2,3...n,代入后...原创 2019-06-19 18:51:38 · 597 阅读 · 0 评论 -
CodeChef TREDEG Trees and Degrees NTT+生成函数
题目分析题目地址->here这是一道二合一题,对于50%的数据,有∑n≤105\sum n \leq 10^5∑n≤105,对于50%的数据有∑n≤2∗106,K=1\sum n \leq 2*10^6,K=1∑n≤2∗106,K=1。显然prufer编码,出现iii次的点度数为i+1i+1i+1。设f(i,j)f(i,j)f(i,j)表示考虑到第iii个点,此时的prufer序列长度...原创 2019-06-19 18:50:59 · 446 阅读 · 0 评论 -
洛谷P5333/bzoj5528/loj3102 [JSOI2019]神经网络 树形DP+生成函数
题目分析链划分显然,一条欧拉路是在一棵树上走一条链,然后跳到另一棵树上走一条链,再跳……可以利用DP求出,每棵树有多少种链划分方式(注意一条链“从这头走到那头”和“从那头走到这头”算两种不同的划分方式)DP方法:设f(x,i,0/1/2)f(x,i,0/1/2)f(x,i,0/1/2)表示以xxx为根的子树,xxx所在的链往子树里伸入的有0/1/2根,一共划分为iii条链的方案数。然后用那...原创 2019-06-03 20:16:32 · 677 阅读 · 0 评论 -
UOJ #390 【UNR #3】百鸽笼 容斥+DP
题目分析算法0每个管理员选哪一列,将构成一个长度为N−1N-1N−1的序列,序列的种数可以通过经典的将aaa个相同元素插入到一个没有该元素的长度为bbb的序列里问题,轻松求出。若一列iii要求有空笼,则标号iii只出现ai−1a_i-1ai−1次,然后算出每种序列的种数,按种数分配概率。期望得分:0算法1分析一下算法0错在哪——每种序列的出现概率并不是相等的,因为每一个管理员选择列的时...原创 2019-05-17 13:21:20 · 563 阅读 · 0 评论 -
《从Unknown谈一类支持末尾插入删除的区间信息维护方法》学习笔记+UOJ #191代码(及HACK5原理,雾)
笔记做带末尾插入删除的区间信息维护)的数据结构题的方法:分块思路:每次插删操作暴力重构最后一块。支持插删操作,支持区间查询,支持在线二进制分组思路:若每次添加一个元素进数据结构里的复杂度比较高,则每次将这个元素单独放在最后一组,若最后一组与上一组的大小相同,就将这两组合并为同一组,不难发现最后得到的每个组大小都是2的次幂,并且互不相同,复杂度会是log\loglog级的。不支持删除...原创 2019-05-21 20:04:53 · 452 阅读 · 0 评论 -
洛谷P4707 重返现世 kMAX-MIN反演+DP
题目分析kMAX-MIN反演设kMAX-MIN反演有反演系数函数f(∣S∣)f(|S|)f(∣S∣),使得kMAX(S)=∑T≠∅,T⊂Sf(∣T∣)MIN(T)kMAX(S)=\sum_{T =\not \emptyset,T \subset S} f(|T|)MIN(T)kMAX(S)=T≠∅,T⊂S∑f(∣T∣)MIN(T)假设SSS集合里有nnn个数,分别是a1,a2......原创 2019-05-20 14:42:28 · 293 阅读 · 0 评论 -
bzoj5493/洛谷P5293/loj3058 [HNOI2019]白兔之舞 单位根反演+MTT+矩阵快速幂
题目分析设AAA为给定的矩阵。余数为ttt时的答案为:∑i=0LCLiAi[i mod k=t]\sum_{i=0}^LC_L^iA^i[i \bmod{k}=t]i=0∑LCLiAi[imodk=t]已知单位根反演的式子1k∑i=0k−1ωkin=[k∣n]\frac{1}{k} \sum_{i=0}^{k-1}...原创 2019-05-01 16:48:32 · 289 阅读 · 0 评论 -
洛谷P1721/bzoj4654/loj2087/uoj223 [NOI2016]国王饮水记 斜率优化
题目分析性质:所有积水高度小于等于1号点的点可以直接丢掉。所以,将留下来的水的高度都改成其原本的高度-1号点高度,最后答案再加上1号点的高度。假如被要求进行两次合并,有两杯水h1<h2h _ 1<h _ 2h1<h2,则一定先合并低的,再合并高的。证明:先合并低的:12(12h1+h2)=14h1+12h2\frac{1}{2}(\frac{1}{...原创 2019-04-30 16:30:51 · 509 阅读 · 0 评论 -
洛谷P5286/bzoj5489/loj3054 [HNOI2019]鱼 计算几何
题目分析不难发现需要枚举D和A,然后鱼头鱼尾分别处理。对于鱼尾,其实就是对着A的半平面内两条到D距离相等的线段组成的,枚举D后,将其他点极角排序,然后扫描线即可解决。对于鱼头,也就是BC这条线段要垂直于AD,且BC的中点在AD上。则预处理枚举每个BC,将这个点对存入它的垂直平分线的vector中,按照中点排序。然后枚举AD,找到AD所在直线的vector,二分查找vector中中点在AD上的...原创 2019-05-03 21:46:29 · 324 阅读 · 0 评论 -
loj3056/洛谷P5288 [HNOI2019]多边形
题目分析容易发现,一条边将多边形分成了“面对n点”的一侧和“背对n点”的一侧。在“背对n点的一侧”,可以找到这条边旋转后,代码#include<bits/stdc++.h>using namespace std;#define RI register intint read() { int q=0;char ch=' '; while(ch<'0'||...原创 2019-04-28 19:04:09 · 285 阅读 · 0 评论 -
bzoj3512 DZY Loves Math IV 欧拉函数+杜教筛
题目分析好难不会QAQ。设S(n,m)=∑i=1mϕ(im)S(n,m)=\sum_{i=1}^m \phi(im)S(n,m)=∑i=1mϕ(im)设www为nnn的所有质因子的(一次方)乘积,v=nwv=\frac{n}{w}v=wn,d=gcd(w,i)d=gcd(w,i)d=gcd(w,i),根据欧拉函数的性质,则有:S(n,m)=v∑i=1mϕ(iw)=v∑i=1mϕ(i)ϕ...原创 2019-03-04 17:17:52 · 341 阅读 · 0 评论 -
51nod 1965 奇怪的式子 min_25筛(扩埃筛)
题目分析首先式子可以写成∏i=1nσ0(i)i∏i=1nσ0(i)μ(i)\prod_{i=1}^n \sigma_0(i)^i \prod_{i=1}^n \sigma_0(i)^{\mu(i)}∏i=1nσ0(i)i∏i=1nσ0(i)μ(i),然后分成两部分分别计算。第一部分也就是∏i=1nσ0(i)i\prod_{i=1}^n \sigma_0(i)^i∏i=1nσ0(i...原创 2019-03-02 13:51:51 · 222 阅读 · 0 评论 -
51nod 1847 奇怪的数学题 莫比乌斯反演+min_25筛+杜教筛
题目分析莫比乌斯反演所谓的sgcd(i,j)sgcd(i,j)sgcd(i,j),就是gcd(i,j)gcd(i,j)gcd(i,j)除以其最小的一个质因子。我们记g(x)=(xminpri(x))Kg(x)=(\frac{x}{minpri(x)})^Kg(x)=(minpri(x)x)K,答案就是求∑i=1n∑j=1ng(gcd(i,j))\sum_{i=1}^n \sum_{j=1}^...原创 2019-03-02 08:34:52 · 356 阅读 · 0 评论 -
与扩展埃氏筛(min_25筛?)玩耍
这篇博客是一年前写的……那时这东西好像还是个Cai佬偷偷教我们的黑科技但现在似乎已经人尽皆知了……Cai佬说这东西叫做扩展埃氏筛,但似乎它和min25筛是一个东西?与素数玩耍例题: loj6235 区间素数个数设sum(x)sum(x)sum(x)表示小于等于x的素数个数。假设我很蠢(这件事根本不用假设好吗),连10以内的素数有哪些都不知道,只知道1不是素数。那么我就会令sum(x)=x...原创 2019-03-01 15:49:45 · 788 阅读 · 0 评论 -
bzoj2219 数论之神 欧拉降幂+BSGS+原根
题目分析题目要求xA≡B(modP)x^A \equiv B \pmod{P}xA≡B(modP)的解的个数。首先将PPP分解质因数,对于每个方程xA≡bi(modpiai)x^A \equiv b_i \pmod{p_i^{a_i}}xA≡bi(modpiai),求出解的个数。假设我们确定了这个方程的解,最后用中国剩余定理合并,不同方程组肯定对应不同的解,所以将每个方程的解数乘起来就是...原创 2019-02-20 09:14:37 · 284 阅读 · 0 评论 -
【洛谷P4245】任意模数NTT
任意模数NTT首先我们取三个模数,使得它们的乘积大于nP2nP2nP^2,7∗226+17∗226+17*2^26+1,998244353998244353998244353,479∗221+1479∗221+1479*2^{21}+1这三个数就挺合适的,它们互质且原根都是3。 然后对于结果的每一位,我们就得到了中国剩余定理形式的式子: ans≡a1(modm1)ans≡a1(modm1)...原创 2018-08-10 19:21:00 · 813 阅读 · 5 评论 -
codeforces 997B 数学
当然,如果你采取打表找规律的方法做的话,本题当然是一道水题。但是这个规律是怎么来的呢?首先我们可知,在{1,5,10,50}{1,5,10,50}\{1,5,10,50 \}中取nnn个组成不同数的方案数,和在{0,4,9,49}{0,4,9,49}\{0,4,9,49 \}中取nnn个的方案数是一样的。这样转化了之后,这些数两两之间互质,并且出现了0,更加好处理。我们现在尽量去限制4...原创 2018-07-05 11:25:27 · 880 阅读 · 0 评论 -
组合数的各种性质和定理
从m个物品里选出n个的方案数,记作CnmCmnC_m^n,即为组合数 组合数有很多很多的性质和定理。。。 注意由于本人沉迷玩梗无法自拔,如果看见您看不懂的梗请随意跳过。组合数通项公式Cnm=m!n!∗(m−n)!Cmn=m!n!∗(m−n)!C_m^n=\frac{m!}{n!*(m-n)!} 证明:现在我们从m个不同的数里选出n个数组成一个排列,第一个位子上的数有m种取法,第二...原创 2017-07-23 19:21:30 · 61348 阅读 · 24 评论 -
codevs1711/洛谷P1436棋盘分割(noi1999)
这是一道神题… 虽然也可以算一道好题…题目分析注意,本篇涉及大量奇怪的数学推理,不适者谨入! 首先我们来分析方差。(x表示平均值) s^2=∑\sum(x-xi)^2=∑\sum(x^2+xi^2-2*x*xi)=x^2+1/n*∑\sumxi^2-2*x/n*∑\sumxi=x^2+1/n*∑\sumxi^2-2*x^2=1/n*∑\sumxi^2-x^2 而平均值是已知的嘛。棋盘的总权值原创 2017-05-16 20:16:50 · 489 阅读 · 1 评论