牛客 判断质数

一、题目描述

数组倒转

描述

请补全预设代码中判断质数的方法。
输入描述:
一个大于1的整数
输出描述:
true/false
示例1

输入:2
输出:true

示例2

输入:9
输出:false

二、思路及解题方法

方法:暴力枚举
  • 枚举从2 ~ N的每一个数
  • 实际上不用枚举到N,只需要枚举到√N就行

注意:

1.不要使用sqrt()函数,直接求√n,因为该函数运算较慢
2。注意数据溢出,i * i <= n可能会溢出,推荐使用i <= n / i

代码如下:
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
       Main main = new Main();
        Scanner scan = new Scanner(System.in);
        int number = scan.nextInt();
        System.out.println(main.isPrimeNumber(number));
    }
    public Boolean isPrimeNumber(int n) {
        //枚举到根号n,注意溢出
        for(int i = 2;i < n / i; i++){
            //如果i可以整除n,说明n不是素数,直接return false
            if(n % i == 0){
                return false;
            }
        }
        //遍历后还找不到能整除n的数,说明n是质数,return true
        return true;
    }
}

运行时间
38ms
占用内存
10976KB

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值