题解 | 判断素数个数

判断素数个数

https://www.nowcoder.com/practice/c6ad83181a17408eb7605d51a251dd9a

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int start = scanner.nextInt();
        int end = scanner.nextInt();
        method(start,end);
    }

    public static void method(int start, int end) {
        int count=0;

        //write your code here......
        if(start > end){
            start = start + end - (end = start);
        }

        for(int i = (start > 2 ? start : 3); i <= end; i++){
            if(isPrimeNum(i)){
                count++;
            }
        }

        System.out.println(start+"到"+end+"之间有"+count+"个大于2的素数");
    }

    public static boolean isPrimeNum(int num){
        if(num == 1 || num == 3){
            return true;
        }
        if(num % 2 == 0){
            return false;
        }
        for(int i = 3; i * i <= num; i += 2){
            if(num % i == 0){
                return false;
            }
        }
        return true;
    }
}

全部评论

相关推荐

牛客10001:问就是六个月,全国可飞,给钱就干
点赞 评论 收藏
分享
吴offer选手:学到了,下次面试也放张纸在电脑上,不然老是忘记要说哪几个点
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务