zoukankan      html  css  js  c++  java
  • 乘法逆元模板

    单个数O(logmod)求逆元

    $View$ $Code$
    
    const int mod=998244353;
    inline long long qpow(long long a,long long b)
    {
    	long long ans=1;
    	while(b)
    	{
    		if(b&1)
    			ans=ans*a%mod;
    		a=a*a%mod;
    		b/=2;
    	}
    	return ans%mod;
    }
    long long calcinv(long long x)
    {
    	return qpow(x,mod-2);
    }
    

    O(n)求1~n的逆元(线性逆元)

    $View$ $Code$ ```cpp #include using namespace std; inline int read() { int ret=0,f=1; char ch=getchar(); while('9'

    O(n)求1~n的阶乘的逆元(阶乘逆元)

    $View$ $Code$
    
    const int mod=998244353;
    int maxn;
    long long ans,fac[100005],inv[100005];
    inline void pre()
    {
    	fac[1]=1;
    	inv[0]=1;
    	for(register int i=2;i<=maxn;i++)
    	{
    		fac[i]=fac[i-1]*i%mod;
    	}
    	inv[maxn]=qpow(fac[maxn],mod-2,mod);
    	for(register int i=maxn;i;i--)
    	{
    		inv[i-1]=inv[i]*i%mod;
    	}
    }
    
  • 相关阅读:
    最小生成树
    单源最短路
    插入排序 静态链表转为有序数组
    不定时更新
    huffman
    二叉树
    宽度优先搜索
    深度优先搜索
    链表
    jQuery学习中 attr() 和 prop() 的区别
  • 原文地址:https://www.cnblogs.com/Peter0701/p/11869760.html
Copyright © 2011-2022 走看看