数论
codertcm
这个作者很懒,什么都没留下…
展开
-
欧拉函数模板
欧拉函数的两种基本写法欧拉函数有直接求法和打欧拉函数表法。欧拉函数的定义:对正整数n,欧拉函数是少于或等于n的数中与n互质的数的数目。例如euler(8)=4,因为1,3,5,7均和8互质。Euler函数表达通式:euler(x)=x(1-1/p1)(1-1/p2)(1-1/p3)(1-1/p4)…(1-1/pn),其中p1,p2……pn为x的所有素因数,x是不为0的整数。euler(1...转载 2018-09-11 22:50:50 · 175 阅读 · 0 评论 -
欧拉筛法求素数
欧拉筛法求素数首先,我们知道当一个数为素数的时候,它的倍数肯定不是素数。所以我们可以从2开始通过乘积筛掉所有的合数。将所有合数标记,保证不被重复筛除,时间复杂度为O(n)。代码比较简单↓_↓/*求小于等于n的素数的个数*/#include<stdio.h>#include<stri转载 2018-09-25 11:27:36 · 1404 阅读 · 0 评论 -
POJ 2689 Prime Distance
The branch of mathematics called number theory is about properties of numbers. One of the areas that has captured the interest of number theoreticians for thousands of years is the question of primali...原创 2018-09-25 20:47:53 · 148 阅读 · 0 评论 -
CodeForces - 1038B Array Product
Find out if it is possible to partition the first n positive integers into two non-empty disjoint sets S1 and S2 such that:gcd(sum(S1),sum(S2))>1Here sum(S) denotes the sum of all elements presen...原创 2018-10-03 20:13:50 · 146 阅读 · 0 评论 -
埃氏筛法和欧拉筛法的区别
Eratosthenes筛法(Sieve of Eratosthenes)由于思想非常简单,故只给出实现。void eratosthenes_sieve(int n){ totPrimes = 0; memset(flag, 0, sizeof(flag)); int sqrtn = sqrt(n + 0.5); for (int i = 2; i <...转载 2018-09-29 21:24:43 · 2600 阅读 · 0 评论