---------------数论
文章平均质量分 68
Bfk_
OIer
展开
-
O(1)快速乘
O(1)快速乘玄学优化 防止long long相乘乘爆LL modmul(LL A,LL B,LL mod){ return (A*B-(LL)((long double)A*B/mod)*mod+mod)%mod;}原创 2017-09-15 15:18:59 · 1240 阅读 · 0 评论 -
POJ2888 Magic Bracelet(Burnside引理+矩阵快速幂优化DP)
POJ2888 Magic Bracelet原题地址:http://poj.org/problem?id=2888题意: T组数据。 有n个珠子串成一个环,珠子共有m种,有k个要求说第x种和第y种珠子不能相邻。 我们认为两个可以通过旋转得到的环是同一种,问一共能串出多少本质不同的环。对9973取模。数据范围 1 ≤ n ≤ 1e9, gcd(n, 9973) = 1,1 ≤ m原创 2018-01-12 19:31:58 · 399 阅读 · 0 评论 -
bzoj4671 异或图(容斥原理 + 第二类斯特林数 + 高斯消元)
bzoj4671 异或图原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=4671题意: 定义两个结点数相同的图 G1 与图 G2 的异或为一个新的图 G, 其中如果 (u, v) 在 G1 与G2 中的出现次数之和为 1, 那么边 (u, v) 在 G 中, 否则这条边不在 G 中。 现在给定 s 个结点数相同的图 G1…s, ...原创 2018-01-31 09:01:22 · 611 阅读 · 0 评论 -
bzoj2742 [HEOI2012]Akai的数学作业 (数学)
bzoj2742 [HEOI2012]Akai的数学作业原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=2742题意: 给出一个一元n次方程:a0+a1x+a2x2+⋯+anxn=0a_0 + a_1x + a_2x^2 +\cdots +a_nx^n= 0 求此方程的所有有理数解数据范围 n <= 100,|a i| <= 2*10^原创 2017-12-11 16:59:38 · 508 阅读 · 0 评论 -
二项式反演证明
式一、 an=∑i=0n(ni)bi⇒bn=∑i=0n(−1)n−i(ni)aian=∑i=0n(ni)bi⇒bn=∑i=0n(−1)n−i(ni)aia_n=\sum\limits_{i=0}^n{n\choose i}b_i \Rightarrow b_n=\sum\limits_{i=0}^n(-1)^{n-i}{n\choose i}a_i证明:  ...原创 2018-01-31 11:48:41 · 947 阅读 · 1 评论 -
bzoj3622 已经没有什么好害怕的了(容斥原理+DP+二项式反演)
bzoj3622 已经没有什么好害怕的了原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=3622题意: 数据范围 1≤ n ≤ 2000,0 ≤ k ≤ n题解: 首先k+n" role="presentation" style="position: relative;">k+nk+nk+n不是偶数就无解了,让k=(原创 2018-01-31 14:58:23 · 551 阅读 · 0 评论 -
CDOJ1544 [“玲珑杯” 线上赛Round #17 B] 当咸鱼也要按照基本法(容斥原理 凑系数)
CDOJ1544 [“玲珑杯” 线上赛Round #17 B] 当咸鱼也要按照基本法原题地址: http://acm.uestc.edu.cn/#/problem/show/1544 http://www.ifrog.cc/acm/problem/1138题意: zhu有N条咸鱼(标号从1到N),每条咸鱼都有一个咸鱼值Ki,初始时所有Ki都是0. zhu有M个咸数,对于每个咸数x,原创 2018-01-30 22:36:53 · 862 阅读 · 0 评论 -
bzoj3160 万径人踪灭(manacher+FFT)
bzoj3160 万径人踪灭原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=3622题意: 给定一个长度为N且只有a,b的字符串,问有多少种方案从中选取一个子序列,使得: 1.位置和字符都关于某条对称轴对称。 2.不能是连续的一段。 数据范围 n题解: 首先求不连续的,就先求所有的,再用manacher求连续原创 2018-02-01 20:51:12 · 393 阅读 · 0 评论 -
HDU5307 He is Flying(FFT)
HDU5307 He is Flying原题地址:http://acm.hdu.edu.cn/showproblem.php?pid=5307题意: 给定n个非负整数a1...an" role="presentation" style="position: relative;">a1...ana1...ana_1...a_n,对所有0≤S≤∑ai原创 2018-02-01 21:38:20 · 434 阅读 · 0 评论 -
bzoj3456 城市规划(分治NTT)
bzoj3456 城市规划原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=3456题意: 阿狸的国家有n个城市, 现在国家需要在某些城市对之间建立一些贸易路线, 使得整个国家的任意两个城市都直接或间接的连通. 为了省钱, 每两个城市之间最多只能有一条直接的贸易路径. 对于两个建立路线的方案, 如果存在一个城市对, 在两个方案中是原创 2018-02-04 09:09:00 · 800 阅读 · 0 评论 -
ZOJ3874 Permutation Graph(DP+分治NTT)
ZOJ3874 Permutation Graph原题地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5482题意: 多组数据。 对于一个排列{a1,a2,… an},如果他把每一对(ai,aj)满足 iaj(即逆序对)连接起来,会得到一张图。 例如,如果排列是{2,3,1,4},则1和2连接,1和3连接。原创 2018-02-04 13:52:05 · 649 阅读 · 0 评论 -
bzoj3451 Tyvj1953 Normal(期望概率+点分治+FFT)
bzoj3451 Tyvj1953 Normal原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=3451题意: 某天WJMZBMR学习了一个神奇的算法:树的点分治! 这个算法的核心是这样的: 消耗时间=0 Solve(树 a) 消耗时间 += a 的 大小 如果 a 中 只有 1 个点 退出 否则在a中选一原创 2018-02-04 17:38:01 · 489 阅读 · 0 评论 -
bzoj4503 两个串(FFT好题)
bzoj4503 两个串 原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=4503题意: 兔子们在玩两个串的游戏。给定两个字符串S和T,兔子们想知道T在S中出现了几次, 分别在哪些位置出现。注意T中可能有“?”字符,这个字符可以匹配任何字符。数据范围 S 长度不超过 10^5, T 长度不会超过 S。 S 中只包含小写字母原创 2018-02-04 22:28:51 · 431 阅读 · 0 评论 -
LOJ2325「清华集训 2017」小Y和恐怖的奴隶主(期望概率+矩阵快速幂)
LOJ2325「清华集训 2017」小Y和恐怖的奴隶主原题地址:https://loj.ac/problem/2325题意:"A fight? Count me in!" 要打架了,算我一个。"Everyone, get in here!" 所有人,都过来!小Y是一个喜欢玩游戏的OIer。一天,她正在玩一款游戏,要打一个Boss。虽然这个Boss有1010010100 ...原创 2018-02-08 22:17:29 · 886 阅读 · 0 评论 -
CodeForces 528D Fuzzy Search(FFT)
CodeForces 528D Fuzzy Search原题地址:http://codeforces.com/problemset/problem/528/D题意: 给给定两个字符串 S,T(字符集大小为4:A ,G ,C ,T),给定阀值 k, 定义T串在S串某位置匹配,当且仅当T串任意位置的这个字符所对应的母串的位置的左右k个字符之内至少有一个与这个字符相同的。 求T串在S串中的匹配次数。原创 2018-02-05 16:48:18 · 586 阅读 · 0 评论 -
bzoj4455&UOJ185 [Zjoi2016]小星星(树形DP+容斥原理)
bzoj4455&UOJ185 [Zjoi2016]小星星原题地址: http://www.lydsy.com/JudgeOnline/problem.php?id=4455 http://uoj.ac/problem/185题意: 给你一个n 个点m 条边的无向图, 再给你一棵n 个点的树, 问有多少种点编号的映射方式, 使得n 个点恰好匹配,且树上的边均存在于原图中。数据范围原创 2018-01-30 14:07:47 · 935 阅读 · 0 评论 -
bzoj1444 [Jsoi2009]有趣的游戏(期望概率+AC自动机+高斯消元)
bzoj1444 [Jsoi2009]有趣的游戏原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=3881题意: 数据范围 n , l, m≤ 10,0题解: Sengxian大佬的题解一个好想又好写的思路是直接算T=∞时,不能出现某个序列的概率, 就是补全AC自动机那个无向图的邻接矩阵,把可以转移到该串尾节点及包原创 2018-02-06 14:57:36 · 574 阅读 · 0 评论 -
多校联训日记
一些目标: 1.学习(思考的方式与练习的方式…) 2.交朋♀♂友交朋友 3.参与运动 4.抗干扰能力++ 5.每日至少一题Day1: 跪。%ltx 归结一下还是学的不扎实。Day2: 跪。%ltx第一题丢50分挺傻逼不说,t3再次被卡常20分,没开O2少用set乱搞。 自带大常数,mercer说循环展开底层优化都救不了我… t2还是对于高消的理解不够吧,确实是自己放弃了正确的思路原创 2017-12-20 18:37:27 · 632 阅读 · 6 评论 -
bzoj3503 [Cqoi2014]和谐矩阵(高斯消元)
bzoj3503 [Cqoi2014]和谐矩阵原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=3503题意: 我们称一个由0和1组成的矩阵是和谐的,当且仅当每个元素都有偶数个相邻的1。一个元素相邻的元素包括它本身,及他上下左右的4个元素(如果存在)。 给定矩阵的行数和列数,请计算并输出一个和谐的矩阵。注意:所有元素为0的矩阵是不允许的。数原创 2017-12-06 20:35:08 · 374 阅读 · 0 评论 -
二进制枚举子集与容斥
一般的3^p的统计子集答案的方法 时间复杂度O(3^p),空间上需要两个数组。 (p为位数)void sumup(){ for(int i=1;i<=top;i++) { for(int s=(i-1)&i;s>0;s=(s-1)&i) {cal(i,s); fix();} }}用容斥...原创 2017-10-19 21:29:06 · 757 阅读 · 0 评论 -
bzoj4403 序列统计 ( 组合数学 + lucas )
bzoj4403 序列统计 原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=4403题意: 多组数据。 给定三个正整数N、L和R,统计长度在1到N之间,元素大小都在L到R之间的单调不降序列的数量。输出答案对10^6+3取模的结果。数据范围 1≤N,L,R≤10^9,1≤T≤100题解: 首先,考虑对于一个长度为n的序列,如何求元素大小原创 2017-10-20 22:06:49 · 556 阅读 · 0 评论 -
bzoj2839 集合计数 (容斥原理+组合数)
bzoj2839 集合计数原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=2839题意: 一个有N个元素的集合有2^N个不同子集(包含空集),现在要在这2^N个集合中取出若干集合(至少一个),使得 它们的交集的元素个数为K,求取法的方案数,答案模1000000007。(是质数喔~)数据范围 1≤N≤1000000;0≤K≤...原创 2017-10-21 20:06:49 · 666 阅读 · 0 评论 -
O(n)递推求逆元
O(n)递推求逆元适用于需要一定区域内的逆元的情况代码:void getinv(int n){ inv[1]=1; inv[0]=1; for(int i=2;i<n;i++) inv[i]=(1LL*(mod-mod/i)*inv[mod%i])%mod; }证明: a*x+b=mod a*x%mod=(-b)%mod -a%mod=inv[x]*b%mod原创 2017-10-18 17:42:35 · 848 阅读 · 0 评论 -
bzoj1485 [HNOI2009]有趣的数列 ( 组合数 + 卡特兰数)
bzoj1485 [HNOI2009]有趣的数列原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=1485题意: 我们称一个长度为2n的数列是有趣的,当且仅当该数列满足以下三个条件:(1)它是从1到2n共2n个整数的一个排列{ai};(2)所有的奇数项满足a1<a3<…<a2n−1a_1< a_3 <…< a_{2n-1},所有的偶数项满足原创 2017-10-22 22:20:35 · 702 阅读 · 2 评论 -
10.22_数论总结
这一周复习了数论内容:组合数: 常用的有lucas定理以及求逆元的操作,思维题比较多, 常常运用于统计方案个数。有时候直接式子难以直接求,需要化简。 常用的转化方式: 通过添减项(+1=+C(n,n)),利用C(n,m)=C(n-1,m-1)+C(n-1,m)来合并各项。 另外还有一些问题可以通过转化模型最后变为组合数,这种情况可以先想想什么是容易求的,再想想可否转化。 例如求...原创 2017-10-22 15:49:03 · 754 阅读 · 0 评论 -
bzoj2142 礼物 ( 扩展Lucas )
bzoj2142 礼物原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=2142题意: 小E从商店中购买了n件礼物,打算送给m个人,其中送给第i个人礼物数量为wi。请你帮忙计算出送礼物的方案数(两个方案被认为是不同的,当且仅当存在某个人在这两种方案中收到的礼物不同)。 由于方案数可能会很大,你只需要输出模P后的结果。数据范围 设P=p1^原创 2017-10-31 22:05:55 · 386 阅读 · 0 评论 -
bzoj4517 [Sdoi2016]排列计数 (错排 + 组合数)
bzoj4517 [Sdoi2016]排列计数原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=4517题意: T组数据。 求有多少种长度为 n 的序列 A,满足以下条件: 1 ~ n 这 n 个数在序列中各出现了一次 若第 i 个数 A[i] 的值为 i,则称 i 是稳定的。序列恰好有 m 个数是稳定的 满足条件的序列可能很多,序列原创 2017-10-24 08:09:51 · 408 阅读 · 0 评论 -
bzoj1951 [Sdoi2010]古代猪文 ( 欧拉定理+CRT+lucas )
bzoj1951 [Sdoi2010]古代猪文 原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=1951题意: 一个朝代流传的猪文文字恰好为N的k分之一,其中k是N的一个正约数(可以是1和N)。不过具体是哪k分之一,以及k是多少,由于历史过于久远,已经无从考证了。考虑到所有可能的k。显然当k等于某个定值时,该朝的猪文文字个数为N ...原创 2017-10-22 12:26:58 · 363 阅读 · 0 评论 -
bzoj1319&1420 Sgu261 Discrete Roots (原根+BSGS)
bzoj1319&1420 Sgu261 Discrete Roots 原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=4241题意: 给出三个整数p,k,a,其中p为质数,求出所有满足x^k=a (mod p),0<=x<=p-1的x。数据范围 0 < = a < p < = 10^9, 2 < = k < = 100000题解: x原创 2017-12-03 16:56:37 · 636 阅读 · 0 评论 -
hdu1753 X问题 (扩展CRT)
hdu1753 X问题原题地址:http://acm.hdu.edu.cn/showproblem.php?pid=1573题意: T组数据, 求在小于等于N的正整数中有多少个X满足: X mod a[0] = b[0], X mod a[1] = b[1], X mod a[2] = b[2], … X mod a[M] = b[M]…数据范围 0 <...原创 2017-12-03 17:26:50 · 402 阅读 · 0 评论 -
bzoj2956 模积和 (分块)
bzoj2956 模积和原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=2956题意: 求∑∑((n mod i)*(m mod j)),其中1<=i<=n,1<=j<=m,i≠j。答案 mod 19940417数据范围 n,m<=10^9题解: ∑ni=1∑mj=1((n mod i)∗(m mod j)) (i≠j)∑_{i=1原创 2017-12-03 18:33:47 · 377 阅读 · 0 评论 -
hdu3949 XOR (线性基(高斯消元))
hdu3949 XOR 原题地址:http://acm.hdu.edu.cn/showproblem.php?pid=3949题意: T组数据, 每组数据给n个数,m个询问,对于每个询问给出一个k,询问给的n个数,选取任意非空子集,能异或出的数中第k小的,重复的数不计算。 数据范围 T<=30,1<=N<=10000,1<=Q<=10000 each number is between 1原创 2017-12-03 19:15:55 · 559 阅读 · 1 评论 -
bzoj2179 FFT快速傅立叶 (FFT)
bzoj2179 FFT快速傅立叶原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=2179题意: 给出两个n位10进制整数x和y,你需要计算x*y。数据范围 n<=60000题解: FFT裸题。 感谢这篇FFT讲解得十分透彻的博文 注意,有精度差异,四舍五入加了0.5。代码: #include<cstdio>#include<i原创 2017-12-03 19:23:30 · 558 阅读 · 1 评论 -
bzoj4176 Lucas的数论 (杜教筛 +莫比乌斯反演)
bzoj4176 Lucas的数论原题地址:http://www.lydsy.com/JudgeOnline/problem.php?id=4176题意: 去年的Lucas非常喜欢数论题,但是一年以后的Lucas却不那么喜欢了。在整理以前的试题时,发现了这样一道题目“求Sigma(f(i)),其中1<=i<=N”,其中 表示i的约数个数。他现在长大了,题目也变难了。 求如下表达式的值:原创 2017-12-03 20:19:03 · 622 阅读 · 0 评论 -
12.1_数论总结
(这周的题解周末补) 规划上所有的知识点都浅浅地过了一遍。挑几点重要的写吧,知识点的笔记和重要的东西都记在自己的小本本上了,这里就给自己提一些容易混淆的问题。线性基: 定义与其性质息息相关。 消成上三角(方便,简单)vs 消成对角线(逐位、互不影响) 贪心的原理:拟阵的证明。 集合S,若某个S的子集r不存在任何一个非空子集异或和0,则r∈I.下面我们证明二元组M=(S,I)是一个拟阵。原创 2017-12-01 22:23:47 · 319 阅读 · 0 评论 -
CodeForces 696D Legen...(AC自动机+矩阵快速幂)
CodeForces 696D Legen…原题地址:http://codeforces.com/problemset/problem/696/D题意: Barney爱上了Nora 想发给她一段长为ll的话(一个由小写字母组成的串)让她开心一下。 Nora有n个喜欢的话(例如 I’m falling for you 这种情话。当然,给出的都是由小写字母组成的串),每个串ii有一个开心值aia_i原创 2018-02-06 17:03:14 · 468 阅读 · 0 评论