#pragma GCC optimize(3)
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn=100005;
const ll mod=100000007;
//gcd
ll gcd(ll x,ll y){
return x==0?y:gcd(y%x,x);}
//扩展欧几里得 ax+by=gcd(a,b)的解
void exgcd(ll a,ll b,ll &x,ll &y){
if(b==0) {
x=1,y=0;}
else
{
exgcd(b,a%b,y,x);
y-=x*(a/b);
}
}
//逆元
ll mod_inverse(ll a,ll mod){
ll x,y;
exgcd(a,mod,x,y);
return (mod+x%mod)%mod;
}
//逆元表
ll inv[maxn];
void get_inverse(int N){
inv[1]=1;
for(int i=2;i<
数学模板
最新推荐文章于 2022-03-01 10:10:50 发布