推荐博客 http://www.cnblogs.com/frog112111/archive/2012/08/19/2646012.html 欧几里得算法求最大公约数(辗转相除) 定理 gcd( m , n )=gcd ( n , m mod n ) ( m>n 且 m mod n 不为0) 最小公 ...
分类:
编程语言 时间:
2017-08-03 01:09:18
阅读次数:
211
定义:当(a,p)=1时,存在ax≡1(mod p),则x叫作a在模p意义下的乘法逆元。 求法: 1.当p为质数时,由费马小定理,得ap-1≡1(mod p),即(a·ap-2)≡1(mod p),则a在模p意义下的乘法逆元是ap-2,直接用快速幂可求得。 2.当p不为质数时,用扩展欧几里得算法求a ...
分类:
其他好文 时间:
2017-08-02 00:37:01
阅读次数:
154
#include<bits/stdc++.h>using namespace std;typedef long long LL; void exgcd(int a,int b,LL &x,LL &y){ if(b==0){x=1, y=0; return;} LL tx,ty; exgcd(b,a% ...
分类:
其他好文 时间:
2017-07-20 20:55:42
阅读次数:
169
拓展欧几里得算法,由欧几里得算法(辗转相除法)得来。 先介绍欧几里得算法: 求两个数的最大公约数,根据简单的证明(就不证了)可得: gcd(a,b)==gcd(b,a%b); 所以可以写出代码: 接下来是拓展欧几里得算法: 首先我们需要知道gcd(a,b)==gcd(b,a%b)==gcd(b,a- ...
分类:
其他好文 时间:
2017-07-16 20:47:40
阅读次数:
201
题意: 求方程X^A = B(mod 2*K + 1) X ∈[0, 2K] 内的解的个数; 题解: 一道数论的好题。 涉及知识点大概有:Crt推论。BSGS,EXGCD,原根与指标; 这道题的主要问题在于两点: 第一点:取模数不是质数,无法利用通常的方式解方程。 可是有中国剩余定理这个东西,定理的 ...
分类:
其他好文 时间:
2017-07-08 18:43:03
阅读次数:
153
依据题意可构造出方程组。方程组的每一个方程格式均为:C1*x1 + C2*x2 + ...... + C9*x9 = sum + 4*ki; 高斯消元构造上三角矩阵,以最后一个一行为例: C*x9 = sum + 4*k。exgcd求出符合范围的x9,其它方程在代入已知的变量后格式亦如此。 第一发G ...
分类:
其他好文 时间:
2017-07-01 14:29:03
阅读次数:
136
果然还是太弱了啊。连着被ljj虐两天,暴力都一脸mengbi. 表示是时候好好整理一下数论了。 NOIP难度: 数论 1.gcd、lcm 2.埃氏筛法 3.exgcd,求解同余方程、逆元 4.快速幂 5.*组合数学 6.矩阵 7.欧拉函数 8.容斥原理 9.期望 省选难度: 1.7 数学相关 1. ...
分类:
其他好文 时间:
2017-06-29 22:08:50
阅读次数:
128
扩展欧几里德很经典。可是也有时候挺难用的。一些东西一下子想不明确。。 于是来了一个逆天模板。。仅仅要能列出Ax+By=C。就能解出x>=bound的一组解了~ LL exgcd(LL a, LL b, LL &x, LL &y) { if(b == 0) { x = 1; y = 0; return ...
分类:
其他好文 时间:
2017-06-06 23:26:34
阅读次数:
181
http://poj.org/problem?id=2142 题意:给出a,b,d<=5e5,问满足x,y>=0,ax+by=d && |x|+|y| 尽量小x,y都为正表示 a,b在c的另外一边.x,y一正一负表示a,b不在同一边 利用exgcd 求出x,y 另x或者y为最小正整数解,带入方程后求 ...
分类:
其他好文 时间:
2017-05-29 19:20:22
阅读次数:
214
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=2480 【题解】 大步小步算法(BSGS) 一直觉得BSGS不大优美因为算法里混杂着一个求逆元,这对推exgcd要好久的人不大兹磁啊。。 参考:http://blog.miskcoo.com/2 ...
分类:
其他好文 时间:
2017-05-28 14:55:49
阅读次数:
138