JAVA 蓝桥杯 算法提高 素数求和
资源限制
时间限制:1.0s 内存限制:256.0MB
问题描述
输入一个自然数n,求小于等于n的素数之和
样例输入
2
样例输出
2
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sca=new Scanner(System.in);
int n=sca.nextInt();
int[] a=new int[n+1];
long sum=0;
for(int i=2;i<Math.sqrt(n);i++) {
for(int j=i*i;j<=n;j+=i) {
a[j]=1;
}
}
for(int i=2;i<=n;i++) {
if(a[i]==0) {
sum+=i;
}
}
System.out.println(sum);
}
}