
数论
pioneer 1
如你所说,成为传奇。
展开
-
快速幂
简介:快速幂算法可以将a^k%p以O(log k)的时间复杂度算出来。原理:我们先求出来a^(2^0)原创 2020-10-27 20:58:53 · 155 阅读 · 0 评论 -
质数筛法模板
1、埃氏筛法原理:每个质数的倍数一定不是质数时间复杂度:O(n*loglogn),约等于O(n)void get_primes(int n){ for(int i=2;i<=n;i++) { if(!st[i]) { primes[cnt++]=i; for(int j=2i;j<=n;j+=i) st[j]=true; } }}2、线性筛法原理:每个原创 2020-07-20 17:43:44 · 157 阅读 · 0 评论 -
小L的取膜算式
题目链接题目描述小L想请你帮忙计算一下这个式子的结果(a+b)pMOD p,其中p是质数。输入多组数据第一行一个T表示数据组数接下来T行,每行3个正整数a, b, p且保证p是质数 ,输入数据都是long long范围内的正整数。特别的: p <= 2^62输出对于每一组输入数据,输出正确结果样例输入Copy11 2 3样例...原创 2019-08-13 18:45:55 · 141 阅读 · 0 评论 -
扩展欧几里得算法
同余定理(a+b)%c=(a%c+b%c)%c(a*b)%c=(a%c*b%c)%c同余定理的加法证明,乘法与之相似a = k1 * m + r1b = k2 * m + r2( a + b )% m =(( k1 * m + r1 )+( k2 * m + r2 ))% m= (( k1 + k2 )* m +( r1 + r2 ))% m= ( r1 + r2 )% ...原创 2019-08-14 14:22:56 · 181 阅读 · 0 评论 -
青蛙的约会(扩展欧几里得)
题目链接两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面。它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止。可是它们出发之前忘记了一件很重要的事情,既没有问清楚对方的特征,也没有约定见面的具体位置。不过青蛙们都是很乐观的,它们觉得只要一直朝着某个方向跳下去,总能碰到对方的。但是除非这两只青蛙在同一时间跳到同一点上,不然是永远都不可能碰面的。为了帮助这两只...原创 2019-08-14 23:03:55 · 183 阅读 · 0 评论 -
A/B
题目链接要求(A/B)%9973,但由于A很大,我们只给出n(n=A%9973)(我们给定的A必能被B整除,且gcd(B,9973) = 1)。Input数据的第一行是一个T,表示有T组数据。每组数据有两个数n(0 <= n < 9973)和B(1 <= B <= 10^9)。Output对应每组数据输出(A/B)%9973。Sample Inp...原创 2019-08-15 21:00:26 · 262 阅读 · 0 评论 -
素数打表之埃氏筛法
资源链接详见白书119页。prim[1]=1;for(int i=2;i<=maxn1;i++) if(!prim[i]) for(int j=2*i;j<=maxn1;j+=i) prim[j]=1;标记0代表素数,1代表合数。从2遍历到n,如果未被标记过说明是素数,那么它的倍数一定是合数,从它的第二倍开始遍历一直遍历到n,将素数的倍数都标记为合数。...原创 2019-09-06 10:22:48 · 165 阅读 · 0 评论