每次复习算法都要重新背一下欧拉筛也是坠了
希望是最后一次
欧拉筛求素数
用来素数打表,是目前能理解的最快的方法,加上minp也可以记录一个数的最小质因数
static int primes[] = new int [N];
static boolean st[] = new boolean [N]; // 标记是否为合数
static int cnt = 0;
// 记录最小质因数
// static int minp[] = new int [N];
static void get_primes(int n) {
for(int i = 2; i <= n; i++) {
if(!st[i]) {
primes[cnt++] = i;
// minp[i] = i;
}
for(int j = 0; i * primes[j] <= n; j++) {
int t = i * primes[j];
st[t] = true;
// minp[t] = primes[j];
if(i % primes[j] == 0) {
break;
}
}
}
}