首页 > 其他分享 >数论板子

数论板子

时间:2023-07-18 20:57:03浏览次数:27  
标签:__ return 数论 long 板子 bs int128 mod

exgcd

点击查看代码
__int128 exgcd(__int128 as,__int128 bs,__int128 &x,__int128 &y){
    if(bs==0){
        x=1;
        y=0;
        return as;
    }
    __int128 ans=exgcd(bs,as%bs,y,x);
    y-=(as/bs)*x;
    return ans;
}

a&c&lucas

点击查看代码
long long c(long long x,long long y){
    if(x>y) return 0;
    return jc[y]%mod*fc[x]%mod*fc[y-x]%mod;
}
long long a(long long x,long long y){
    if(x>y) return 0;
    return jc[y]%mod*fc[y-x]%mod;
}
long long lcs(long long x,long long y){
    if(x==0) return 1;
    return c(x%mod,y%mod)%mod*lcs(x/mod,y/mod)%mod;
}

excrt

点击查看代码
__int128 excrt(){
    __int128 aa=a[1],bb=b[1],x,y;
    for(int i=2;i<=n;i++){
        __int128 an=exgcd(aa,a[i],x,y);
        if((b[i]-bb)%an) return -1;
        x=(b[i]-bb)/an*x%(a[i]/an);
        bb=aa*x+bb;
        aa=aa/an*a[i];
        bb%=aa;
    }
    return (bb%aa+aa)%aa;
}

标签:__,return,数论,long,板子,bs,int128,mod
From: https://www.cnblogs.com/muzqingt/p/17564096.html

相关文章

  • 数论分块
    概念我们考虑这样一个问题:求\(\sum_{i=1}^{k}\lfloor\dfrac{n}{i}\rfloor\)我们以\(n=7,k=7\)为例子,先画出\(f(x)=\dfrac{7}{x}\(1\leqx\leq7)\)的图像因为我们的取值是向下取整的,我们描出所有可能的取值注意到所有的点按照取值可以分成若干段我们可以一次......
  • 20230710-20230711 数论
    数论被薄纱了/kk授课老师:南京大学-朱富海教授20230710裴蜀定理对于给定不全为零的整数的\(a,b\)一定存在一对整数\(x,y\)满足\(ax+by=gcd(a,b)\)。证明:\(a==0\)\(or\)\(b==0\)显然成立;设\(gcd(a,b)=d\),即求证存在\(x,y\)满足\(ax+by=d\),等式两边同时除......
  • 数论专题练习
    数论专题练习A-BeautifulNumbers题意:输入a,b,n,求只包含a,b的n位数并且n位之和为a或b的数量枚举a和b的数量,判断它们的和是否为一个good_number,然后用组合数(详见数论的组合数)求和#include<bits/stdc++.h>usingnamespacestd;constintp=1e9+7;constintMAXN=1e6......
  • 整除分块(数论分块)
    整除分块是为了解决一个整除的求和的问题:sum(floor(n/i))(1<=i<=n) ,如果直接暴力计算复杂度O(n),但整除分块的复杂度为O(2sqrt(n)),其中的2为常数,可以忽略,那么复杂度为O(sqrt(n))下面给出整除分块的模板代码#include<bits/stdc++.h>#definelllonglongusingnamespacestd;ll......
  • 数论
    算法记号\(a\modp\):\(a\)除\(p\)的余数,等于\(a-p\times\lfloor\frac{a}{p}\rfloor\)。\(a\midb\):\(a\)整除\(b\)即\(a\)是\(b\)的因数。素数判定试除法对于任意整数\(n\),它的因数\(d,\frac{n}{d}\)总是成对出现,所以可以枚举\([2,\sqrt{n}]\)内的数......
  • 数论基础
    数论基础导读:快速幂取模、欧式筛法、裴蜀定理(贝祖定理)、威尔逊定理、费马定理、(扩展)中国剩余定理。快速幂取模求\(a^b\%p\)我们有时间复杂度\(O(b)\)的办法。但数据规模放大时,我们的显示界面难免会出现一个老熟人TLE,我们需要更快的方法。根据初中数学,\(a^b\)可以化为\((a^2......
  • 【调试笔记】韦东山:在100ASK_IMX6ULL板子上支持其他型号的屏幕
    论  坛:http://bbs.100ask.net/(学术答疑)公 众 号:百问科技版本日期作者说明V12020韦东山技术文档在100ASK_IMX6ULL板子上支持其他型号的屏幕1.在100ASK_IMX6ULL底板上如何接其他厂家的屏幕很多学员有过STM32的学习经验,他们手上的开发板很多,LCD也很多。一个LCD还挺贵的,不能浪......
  • 快速数论变换NTT学习笔记
    前言在这篇文章中我介绍了什么是\(\text{FFT}\),但是在文中我们也说了一嘴这玩意是有精度误差的,三角函数和复数导致我们不得不进行取整操作。只要毒瘤出题人原因,那就可以\(\text{HackFFT}\)。Tips:根据《NOI大纲》的内容,卡精度和卡常数通常是不允许的。所以\(\text{FFT}......
  • [数论]数论函数/莫比乌斯反演
    数论函数/莫比乌斯反演1.1积性函数数论函数:可以认为是定义在整数上的函数。1)积性函数定义(a,b)=1,f(a,b)=f(a)f(b)2)积性函数性质对于积性函数\(f\),是被所有\(p^e\)处的值决定的a=1,f(b)=f(1)f(b)​ \(f(60)=f(4)\timesf(15)=f(4)\timesf(3)\timesf(5......
  • 初等数论
    初等数论\(\mathcal{P}art\)1.基础概念整除对两个正整数\(a\),\(b\)(\(b\lea\)),如果存在一个整数\(k\)使得\(a=kb\),则称\(b\)整除\(a\),记作\(b|a\)带余除法对任何整数\(a\)和正整数\(b\),一定存在一个整数\(r\in[0,b)\)和一个整数\(k\),使得\(a=kb+r\),称上式......