数学;数论
文章平均质量分 87
niiick
OIer/ACMer
展开
-
洛谷P3321 [SDOI2015]序列统计【NTT+原根】
题目描述小C有一个集合 S,里面的元素都是小于 m 的非负整数。他用程序编写了一个数列生成器,可以生成一个长度为 n 的数列,数列中的每个数都属于集合 S。小C用这个生成器生成了许多这样的数列。但是小C有一个问题需要你的帮助:给定整数 x,求所有可以生成出的,且满足数列中所有数的乘积mod m的值等于 x 的不同的数列的有多少个。小C认为,两个数列 A 和 B 不同,当且仅当 ∃i s.t. Ai≠Bi\exists i \text{ s.t. } A_i \neq B_i∃i&n原创 2021-10-20 11:52:25 · 291 阅读 · 0 评论 -
快速数论变换NTT
学习NTT首先需要一些前置知识,原根及其求解和FFT快速傅里叶变换NTT与FFT的理论基础完全一样FFT中求值与插值使用了n次单位根,而NTT则选择了原根由此与FFT相比,NTT可以取模、避免浮点精度误差、且运算常数小但也同时因此不能计算浮点系数,且模数也有限制NTT的膜数一般是P=r2k+1P=r2^k+1P=r2k+1,常取P=998244353,其一个原根为g=3可以证明,gP−1ng^{\frac{P-1}{n}}gnP−1与wn=e2πinw_n=e^{\frac{2\pi i}{n原创 2021-10-13 20:04:58 · 549 阅读 · 0 评论 -
原根的求解及应用
原根的定义首先引入数论中阶的定义设a∈Z,m∈N+a\in Z, m\in N^+a∈Z,m∈N+,若gcd(a,m)=1gcd(a,m)=1gcd(a,m)=1,则称使得an≡1(mod m)a^n\equiv 1(\mod m)an≡1(modm)成立的最小正整数nnn为aaa膜mmm的阶接下来是阶的定义设a∈Z,m∈N+a\in Z, m\in N^+a∈Z,m∈N+,若gcd(a,m)=1gcd(a,m)=1gcd(a,m)=1,且aaa膜mmm的阶为φ(m)\varphi(m)φ(原创 2021-10-13 17:10:16 · 1808 阅读 · 0 评论 -
Miller-Rabin素数测试与Pollard Rho大整数分解
// miller-rabin Pollard Rho#include<iostream>#include<cstdlib> #include<algorithm>#include<cstring>#include<cstdio>using namespace std;typedef __int128 ll128;typedef long long lt;typedef double db;typedef unsigned l.原创 2021-09-17 20:03:11 · 208 阅读 · 0 评论 -
BZOJ3884 || 洛谷P4139 上帝与集合的正确用法【欧拉定理】
Time Limit: 5 SecMemory Limit: 128 MBDescription一句话题意:222…&amp;VeryThinSpace;mod&amp;VeryThinSpace;p2^{2^{2^{\dots}}}\bmod p222…modpInput接下来T行,每行一个正整数p,代表你需要取模的值OutputT行,每行一个正整数,为答案对p取模后的值HIN...原创 2019-03-04 22:07:37 · 159 阅读 · 0 评论 -
FFT快速傅里叶变换
引言FFT(Fast&amp;amp;amp;amp;amp;amp;amp;amp;amp;nbsp;Fourier&amp;amp;amp;amp;amp;amp;amp;amp;amp;nbsp;Transformation)FFT (Fast\ Fourier\ Transformation)FFT(Fast&amp;amp;amp;amp;amp;amp;amp;amp;amp;nbsp;Fourier&amp;amp;amp;am原创 2018-12-30 20:37:24 · 727 阅读 · 0 评论 -
洛谷P3338 [ZJOI2014]力【FFT】
Time Limit: 30 SecMemory Limit: 256 MBDescription给出n个数qi,给出Fj的定义如下:令Ei=Fi/qi,求Ei.Input第一行一个整数n。接下来n行每行输入一个数,第i行表示qi。n≤100000,0<qi<1000000000Outputn行,第i行输出Ei。与标准答案误差不超过1e-2即可。题目分析Ei...原创 2019-01-04 12:47:28 · 133 阅读 · 0 评论 -
洛谷P5002 专心OI - 找祖先【LCA+数学】
时空限制 1000ms / 128MB题目描述这个游戏会给出你一棵树,这棵树有N个节点,根结点是R,系统会选中M个点P1,P2...PMP_1,P_2...P_MP1,P2...PM,要Imakf回答有多少组点对(ui,vi)(u_i,v_i)(ui,vi)的最近公共祖先是PiP_iPi 。Imakf是个小蒟蒻,他就算学了LCA也做不出,于是只好求助您了。Imakf毕竟学过一点O...原创 2018-11-05 19:21:45 · 205 阅读 · 0 评论 -
0/1分数规划 详解
0/1分数规划的模型是这样的给定一系列整数a1,a2,...,ana1,a2,...,ana_1,a_2,...,a_n及b1,b2,...,bnb1,b2,...,bnb_1,b_2,...,b_n 求解一组xi(1&amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;=i&amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;=n,xi=0或1)xi(1&amp;amp;amp;amp;amp;原创 2018-07-05 17:50:14 · 4954 阅读 · 1 评论 -
洛谷P4884 多少个1?【BSGS】
时空限制 2000ms / 128MB题目描述给定整数KKK和质数mmm,求最小的正整数NNN,使得 11⋯111⋯1(N个1)≡K(modm)11\cdots111⋯1(N个1) \equiv K \pmod m11⋯111⋯1(N个1)≡K(modm)说人话:就是 111…1111 mod m =K输入格式:第一行两个整数,分别表示KK和mm输出格式:一个整数,表示符合条件最小的...原创 2018-09-23 19:22:45 · 243 阅读 · 0 评论 -
BZOJ4869 || 洛谷P3747 [SHOI2017]相逢是问候【欧拉定理+线段树】
Time Limit: 40 SecMemory Limit: 512 MBDescriptionInformatikverbindetdichundmich.信息将你我连结。B君希望以维护一个长度为n的数组,这个数组的下标为从1到n的正整数。一共有m个操作,可以分为两种:0 l r表示将第l个到第r个数(al,al+1,…,ar)中的每一个数ai替换为c^ai,即c的ai次方,其中c是...原创 2019-03-05 21:43:00 · 241 阅读 · 0 评论 -
洛谷P2158 [SDOI2008]仪仗队【欧拉函数】
时空限制 1000ms / 128MB题目描述作为体育委员,C君负责这次运动会仪仗队的训练。仪仗队是由学生组成的N * N的方阵,为了保证队伍在行进中整齐划一,C君会跟在仪仗队的左后方,根据其视线所及的学生人数来判断队伍是否整齐(如下图)。现在,C君希望你告诉他队伍整齐时能看到的学生人数。输入格式:共一个数N输出格式:共一个数,即C君应看到的学生人数。【数据规模和约定】对于 10...原创 2019-03-06 12:14:49 · 125 阅读 · 0 评论 -
整除分块 — 洛谷P2261 [CQOI2007]余数求和
什么是整除分块蒟蒻通过一个很有趣的问题学到了整除分块求∑i=1n⌊ni⌋,n≤1012\sum_{i=1}^n\lfloor\frac{n}{i}\rfloor,n\leq 10^{12}∑i=1n⌊in⌋,n≤1012直接线性求肯定会超,但是我们冷静分(da)析(biao)一波会发现这样两个性质∀i∈[1,n],⌊ni⌋\forall i\in[1,n],\lfloor\fr...原创 2019-03-06 21:55:08 · 119 阅读 · 0 评论 -
洛谷P2568 GCD【欧拉函数】
时空限制 1000ms / 256MB题目描述给定整数N,求1&amp;lt;=x,y&amp;lt;=N且Gcd(x,y)为素数的数对(x,y)有多少对.说明1&amp;lt;=N&amp;lt;=10^7题目分析第一眼想到的是莫比乌斯反演,然而愉快地T飞了仔细一想单词询问莫比乌斯反演的预处理确实挺费时的考虑转化题意为对每个不大于n的素数p求1≤x,y≤⌊np⌋1\leq x,y \leq \lfloor\...原创 2019-03-14 19:04:32 · 333 阅读 · 0 评论 -
BZOJ5296 || 洛谷P4454 [CQOI2018]破解D-H协议【BSGS】
Time Limit: 10 SecMemory Limit: 512 MBDescriptionDiffie-Hellman密钥交换协议是一种简单有效的密钥交换方法。它可以让通讯双方在没有事先约定密钥(密码)的情况下通过不安全的信道(可能被窃听)建立一个安全的密钥K,用于加密之后的通讯内容。假定通讯双方名为Alice和Bob,协议的工作过程描述如下(其中mod表示取模运算):1.协议...原创 2019-03-17 22:25:39 · 116 阅读 · 0 评论 -
莫比乌斯反演--懵逼反演系列
反演的定义设有算术函数f(n),g(n)f(n),g(n)f(n),g(n),其中g(n)g(n)g(n)已知且f(n),g(n)f(n),g(n)f(n),g(n)满足关系g(n)=∑i=0nan,if(i)g(n)=\sum_{i=0}^na_{n,i}f(i)g(n)=∑i=0nan,if(i)反演就是利用g(n)g(n)g(n)和已知关系推导出f(n)f(n)f(n)关于g(i)...原创 2019-03-06 21:20:21 · 1077 阅读 · 0 评论 -
HDU - 5984 Pocky【期望+积分】
令f(x)f(x)f(x)为长度为xxx的期望次数若x≤dx\leq dx≤d,则f(x)=0f(x)=0f(x)=0若x≥dx\geq dx≥d,则f(x)=1+1x( ∫0df(t)dt + ∫dxf(t)dt )f(x)=1+\frac{1}{x}(\ \int_0^df(t)dt\ +\ \int_d^xf(t)dt\ )f(x)=1+x1(...原创 2019-04-07 22:03:50 · 194 阅读 · 0 评论 -
BZOJ1951 || 洛谷P2480 [SDOI2010]古代猪文【Lucas定理+CRT+欧拉定理】
时空限制 1000ms / 128MB题目描述猪王国的文明源远流长,博大精深。iPig在大肥猪学校图书馆中查阅资料,得知远古时期猪文文字总个数为N。当然,一种语言如果字数很多,字典也相应会很大。当时的猪王国国王考虑到如果修一本字典,规模有可能远远超过康熙字典,花费的猪力、物力将难以估量。故考虑再三没有进行这一项劳猪伤财之举。当然,猪王国的文字后来随着历史变迁逐渐进行了简化,去掉了一些不常用的...原创 2019-04-02 13:14:21 · 171 阅读 · 1 评论 -
洛谷P4071 [SDOI2016]排列计数【组合数学+错排】
时空限制 1000ms / 128MB####题目描述求有多少种长度为 n 的序列 A,满足以下条件:1 ~ n 这 n 个数在序列中各出现了一次若第 i 个数 A[i] 的值为 i,则称 i 是稳定的。序列恰好有 m 个数是稳定的满足条件的序列可能很多,序列数对 10^9+7109+7 取模。####输入格式:第一行一个数 T,表示有 T 组数据。接下来 T 行,每行两个整数...原创 2018-09-17 20:00:12 · 302 阅读 · 0 评论 -
BZOJ2242 || 洛谷P2485 [SDOI2011]计算器【扩展欧几里得+BSGS】
Time Limit: 10 Sec Memory Limit: 512 MBDescription你被要求设计一个计算器完成以下三项任务: 1、给定y,z,p,计算Y^Z Mod P 的值; 2、给定y,z,p,计算满足xy≡ Z ( mod P )的最小非负整数; 3、给定y,z,p,计算满足Y^x ≡ Z ( mod P)的最小非负整数。Input输入包含多组...原创 2018-08-17 17:54:11 · 186 阅读 · 0 评论 -
中国剩余定理 && 扩展中国剩余定理
同余原创 2018-05-07 18:37:55 · 27651 阅读 · 18 评论 -
洛谷P3868 [TJOI2009]猜数字【中国剩余定理】
数论;同余原创 2018-05-07 18:51:37 · 3167 阅读 · 0 评论 -
乘法逆元 求解及应用
数论原创 2018-04-28 19:10:46 · 715 阅读 · 0 评论 -
组合数杂谈
数论原创 2018-04-27 18:58:03 · 261 阅读 · 0 评论 -
扩展欧几里得 推导及应用
数论;扩展欧几里得原创 2018-04-28 18:33:46 · 1842 阅读 · 0 评论 -
Catalan 卡特兰数
Catalan数原创 2018-04-25 14:26:15 · 301 阅读 · 0 评论 -
BZOJ1013 || 洛谷P4035 [JSOI2008]球形空间产生器【高斯消元】
∑nj=1(ai,j−xj)2−(ai+1,j−xj)2=0∑j=1n(ai,j−xj)2−(ai+1,j−xj)2=0\sum_{j=1}^n(a_{i,j}-x_j)^2-(a_{i+1,j}-x_j)^2=0 ∑nj=1(a2i,j−2ai,jxj+x2j)−(a2i+1,j−2ai+1,jxj+x2j)=0∑j=1n(ai,j2−2ai,jxj+xj2)−(ai+1,j2−2ai+1,j...原创 2018-07-09 19:11:11 · 144 阅读 · 0 评论 -
Lucas定理&&扩展Lucas
Lucas定理求解CmnmodpCnmmodpC_n^m\mod p (p为素数)蒟蒻不会证明,记着递推公式就好=_= Lucas(n,m)=C(n,m)Lucas(n,m)=C(n,m)Lucas(n,m)=C(n,m)%ppp=C(n=C(n=C(n%ppp,m,m,m%ppp)∗Lucas(n/p,m/p))∗Lucas(n/p,m/p))*Lucas(n/p,m/p)%p ...原创 2018-07-16 15:35:05 · 944 阅读 · 0 评论 -
BSGS算法
BSGS (Baby Step-Giant Step 大步小步算法) 拔山盖世算法 用于求解高次同余方程ax≡b(modp)ax≡b(modp)a^x\equiv b(\mod p),其中a,pa,pa,p互质我们令t=⌊p–√⌋t=⌊p⌋t=\lfloor{\sqrt{p}}\rfloor 并将xxx表示为x=i∗t−jx=i∗t−jx=i*t-j,其中0&lt;=j&lt;=t0&l...原创 2018-08-17 17:50:12 · 188 阅读 · 0 评论 -
CodeForces - 451E Devu and Flowers【多重集下的组合数+容斥】
Devu wants to decorate his garden with flowers. He has purchased n boxes, where the i-th box contains fi flowers. All flowers in a single box are of the same color (hence they are indistinguishable). ...原创 2018-08-16 17:49:40 · 942 阅读 · 1 评论 -
多重集下的组合数
多重集定义多重集是指包含重复元素的广义集合 例如S={n1⋅a1,n2⋅a2,...,nk⋅ak}S={n1⋅a1,n2⋅a2,...,nk⋅ak}S=\{n_1\cdot a_1,n_2\cdot a_2,...,n_k\cdot a_k\}就是由n1n1n_1个a1a1a_1,n2n2n_2个a2a2a_2,…,nknkn_k个akaka_k组成的多重集多重集的排列数给定一个...原创 2018-08-16 17:25:33 · 5616 阅读 · 1 评论 -
BZOJ2705 || 洛谷P2303 [SDOi2012]Longge的问题【欧拉函数】
Time Limit: 3 Sec Memory Limit: 128 MBDescriptionLongge的数学成绩非常好,并且他非常乐于挑战高难度的数学问题。现在问题来了:给定一个整数N,你需要求出∑gcd(i, N)(1&amp;lt;=i &amp;lt;=N)。Input一个整数,为N。Output一个整数,为所求的答案。HINT【数据范围】 对于6...原创 2018-08-03 11:52:24 · 156 阅读 · 0 评论 -
欧拉phi函数—详解
定义111~NNN中与NNN互质的数的个数叫欧拉函数,记为φ(N)φ(N)\varphi(N) 对NNN分解质因数N=pc11∗pc11∗...∗pckkN=p1c1∗p1c1∗...∗pkckN=p_1^{c_1}*p_1^{c_1}*...*p_k^{c_k} 则有φ(N)=N∗(1−1p1)∗(1−1p2)∗...∗(1−1pk)φ(N)=N∗(1−1p1)∗(1−1p2)∗...∗...原创 2018-08-02 16:23:34 · 13294 阅读 · 0 评论 -
[NOI2018 D2T1]屠龙勇士【扩展欧几里得+EXCRT+平衡树】
ai−ATi∗xmodpi=0ai−ATi∗xmodpi=0a_i-AT_i*x\mod p_i=0ATi∗xi≡ai(modpi)ATi∗xi≡ai(modpi)AT_i*x_i\equiv a_i(\mod p_i) 记gcd=gcd(ATi,pi)gcd=gcd(ATi,pi)gcd=gcd(AT_i,p_i) 最小非负整数解 xi=(xi∗cgcdmodbgcd+bgcd)modb...原创 2018-08-04 11:29:02 · 502 阅读 · 0 评论 -
BZOJ2142 || 洛谷P2183 礼物【扩展Lucas】
Time Limit: 10 Sec Memory Limit: 259 MBDescription一年一度的圣诞节快要来到了。每年的圣诞节小E都会收到许多礼物,当然他也会送出许多礼物。不同的人物在小E 心目中的重要性不同,在小E心中分量越重的人,收到的礼物会越多。小E从商店中购买了n件礼物,打算送给m个人 ,其中送给第i个人礼物数量为wi。请你帮忙计算出送礼物的方案数(两个方案...原创 2018-07-17 08:02:05 · 186 阅读 · 0 评论 -
矩阵快速幂入门笔记
作为一个因为极度畏惧数学而选择成为一名OIer的蒟蒻终于还是迎来了要面对的这一天一般题目中矩阵运算好像只用到矩阵乘法 (或许只是蒟蒻我做的题太少) 而且矩阵的乘法也是较难理解的一部分 所以就简单讲讲矩阵乘法如图 矩阵A*B就是用A的每一行依次乘B的每一列 具体就是A的第i行中每一个数对应相乘B的第j列每个数 每个相乘所得结果相加 最后放置于C矩阵的第i...原创 2018-02-10 18:50:30 · 311 阅读 · 0 评论