问题描述
输入一个自然数n,求小于等于n的素数之和
样例输入
2
样例输出
2
数据规模和约定
测试样例保证 2 <= n <= 2,000,000
思路
这道题要注意数据规模,n的最大值为2000000,如果用测试法判断每一个数的能否被它的因子整除会超时
这里用筛选法求素数:
i从2开始,把i的所有倍数都筛选掉,最后剩下的都是素数
代码
import java.util.Scanner;
public class SumOfPrime {
public static void main(String[] args) {
Scanner input = new