UVa第十章数学概念与方法

Bryce1010模板

10.1数论初步

1.欧几里得算法和唯一分解定理

2.Eratosthenes筛法

补充素数筛选

const int MAXN=1e6+10;
ll prime[MAXN];


void getPrime(int maxn)
{
    memset(prime,0,sizeof(prime));
    for(int i=2;i<=maxn;i++)
    {
        if(!prime[i])prime[++prime[0]]=i;
        for(int j=i;j<=prime[0]&&prime[j]<=maxn/i;j++)
        {
            prime[prime[j]*i]=1;
            if(i%prime[j]==0)break;
        }
    }
}

3.扩展欧几里得算法
设a,b,c为任意整数。若方程ax+by=c的一组整数解为(x0,y0),则它的任意整数解口可以写成(x0+kb’,y0-ka’),其中a’=a/gcd(a,b),b’=b/gcd(a,b),k取任意整数。

4.同余与模运算

巨大的斐波那契数
不爽的裁判
选择与除法
最小公倍数的最小和
GCD等于XOR

posted @ 2018-07-13 16:37  Bryce1010  阅读(82)  评论(0编辑  收藏  举报