码迷,mamicode.com
首页 > 其他好文 > 详细

逆元模板

时间:2015-08-20 23:59:49      阅读:476      评论:0      收藏:0      [点我收藏+]

标签:

// 扩展欧几里得做法;

1
#include<iostream> 2 #include<cstdio> 3 #include<algorithm> 4 #include<cstring> 5 #define ll long long 6 using namespace std; 7 8 ll ex_gcd(ll a,ll b,ll &x,ll &y)//扩展欧几里得(扩展gcd) 9 { 10 if (a==0&&b==0) return -1; 11 if (b==0){x=1;y=0;return a;} 12 ll d=ex_gcd(b,a%b,y,x); 13 y-=a/b*x; 14 return d; 15 } 16 17 ll mod_inverse(ll a,ll mod)//乘法逆元 18 { 19 ll x,y; 20 ll d = ex_gcd(a,mod,x,y); 21 return (x%mod+mod)%mod; 22 } 23 int low_bit(int x){return x&(-x);} 24 int main() 25 { 26 for(int i=0;i<=16;i++) 27 cout<<i<< <<low_bit(i)<<endl; 28 return 0; 29 }

 

逆元模板

标签:

原文地址:http://www.cnblogs.com/by-1075324834/p/4746504.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!