筛质数

筛选法求素数

http://www.nowcoder.com/questionTerminal/06c3dcc303654ef4926654023eca1e5a

import java.util.*;
public class Main {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        while (sc.hasNext()){
            int n = sc.nextInt();
            int[] v = new int[n + 1];
            for(int i = 0; i <= n; ++i) v[i] = i;
            v[1] = 0;
            int c = 1;
            for(int i = 0; i <= n; ++i){
                if(v[i] != 0){
                    System.out.printf("%d ", v[i]);
                    c++;
                    for(int j = 2; j*v[i] <= n; ++j){
                        v[j*v[i]] = 0;
                    }
                }
            }
            System.out.println();
            System.out.println(n - c);
        }
    }
}
全部评论

相关推荐

03-29 18:59
运城学院 Java
程序员小白条:咱们要对自己的简历和学历有清晰的认知,不要动不动就大厂了....都26届了,没实习还想着大厂,唉
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务