
逆元
九野的博客
这个作者很懒,什么都没留下…
展开
-
扩展GCD 中国剩余定理(CRT) 乘法逆元模版
已知 a,b (a>=0,b>=0) 求一组解 (x,y) 使得 (x,y)满足 gcd(a,b) = ax+by 注意求出的 x,y 可能为0或负数 代码中g = gcd(a,b); LL extend_gcd (LL a , LL b , LL &x , LL &y) { if (b == 0) { x = 1LL; y = 0;原创 2014-06-21 23:01:06 · 2838 阅读 · 2 评论 -
Codeforces 57C Array dp暴力找规律
题目链接:点击打开链接 先是计算非递增的方案, 若非递增的方案数为x, 则非递减的方案数也是x 答案就是 2*x - n 只需求得x即可。 可以先写个n3的dp,然后发现规律是 C(n-1, 2*n-1) 然后套个逆元即可。 #include #include #include #include using namespace std; #define ll long long #d原创 2014-08-04 16:55:21 · 1571 阅读 · 0 评论 -
HDU 4812 D Tree 树分治+逆元+hash新姿势
题意: 给定n个点的树 K 下面n个数是点权 下面n-1行给出树边。 问: 是否存在一条路径使得路径上点权积 % mod = K 若存在则输出路径的两端。 若存在多条路径则输出字典序最小的一条。 思路: 按树重心分治。 分成路径是否经过树重心。 然后用力码。。 has[x] = u; 表示乘积为x 对应的点是u 但这样has就不能用计数器来优化清空。原创 2014-10-04 21:18:44 · 2784 阅读 · 0 评论 -
UVA 11174 Stand in a Line 树形dp+计数
题目链接:点击打开链接 题意:白书的P103. 加个虚根就可以了。。。然后就是一个多重集排列。 import java.io.PrintWriter; import java.util.ArrayList; import java.util.Scanner; public class Main { static int N = 40100; ArrayList[] G = new Ar原创 2014-12-23 00:01:47 · 1622 阅读 · 0 评论 -
Codeforces 300C Beautiful Numbers 乘法逆元
题目链接:http://codeforces.com/contest/300/problem/C 题意: 题意忘了。 总之暴力枚举x 乘法逆元: (a / b)%mod = a * b^(mod-2) #include #include using namespace std; #define ll __int64 ll a,b,n,f[1000010],Mod=1000000原创 2014-04-22 17:37:19 · 1968 阅读 · 0 评论 -
exgcd求逆元模板
求x在模为mod时的逆元: exgcd(x,mod,x,y) 求出后,第三个参数就是逆元。 mod可以不为质数 int exgcd(ll a,ll b,ll &x,ll &y) { if(a==0) { x=0;y=1; return b; } else { ll tx,ty;原创 2015-08-15 21:35:27 · 6014 阅读 · 0 评论