暴力解法
只需要遍历到sqrt(n)
偶数一定是合数
埃氏筛法
素数的倍数一定是合数
欧式筛法
保证没有埃氏筛法的重复筛选,保证每个合数都只由自己最小的质因数筛选得到
将找到的素数保存进数组。对于一个合数i,将i与已知的每个素数的乘积标记为合数,如果i能整除当前素数x,break
原理:如果i能被素数x整除(i % x = mid),则用i与更大的素数x_pro得到的乘积一定能也能用更小的素数x乘以某个数得到
i * x_pro=(mid * x) * x_pro
暴力解法
只需要遍历到sqrt(n)
偶数一定是合数
埃氏筛法
素数的倍数一定是合数
欧式筛法
保证没有埃氏筛法的重复筛选,保证每个合数都只由自己最小的质因数筛选得到
将找到的素数保存进数组。对于一个合数i,将i与已知的每个素数的乘积标记为合数,如果i能整除当前素数x,break
原理:如果i能被素数x整除(i % x = mid),则用i与更大的素数x_pro得到的乘积一定能也能用更小的素数x乘以某个数得到
i * x_pro=(mid * x) * x_pro