zoukankan      html  css  js  c++  java
  • 2018/12/06 L1-028 判断素数 Java

    这题其实很简单, 就是判断素数, 但是, 这题将1也包括在测试点里面, 这个是很奇怪的, 因为素数不是从2开始的吗? 为什么要判断1?我在这个测试点上花了好多的脑细胞~~~~~, 代码如下:

    import java.io.BufferedReader;
    import java.io.InputStreamReader;
    
    public class Main2 {
    
        public static void main(String[] args) throws Exception{
            BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
            int num = Integer.parseInt(br.readLine());
            int[] ArrNum = new int[num];
            String[] YesOrNo = new String[num];
            for(int i=0; i<num; i++) {
                ArrNum[i] = Integer.parseInt(br.readLine());  // 用来接收输入的要判断的数字.
            }
            for(int i=0; i<num; i++) {
                if(PrimeNumber(ArrNum[i])) {
                    YesOrNo[i] = "Yes";
                } else {
                    YesOrNo[i] = "No";
                }
            }
            for(int i=0; i<num; i++) {
                System.out.println(YesOrNo[i]);
            }
        }
        public static boolean PrimeNumber(int num) {  // 这个判断方法超时了.
            if( num == 1) {
                return false;
            }
            if( num == 2 || num == 3) {
                return true;
            }
            if( num%6 != 1 && num%6 != 5) {
                return false;
            }
            
            int tem = (int)Math.sqrt(num);
            for(int i=5; i<=tem; i+=6) {
                if( num%i == 0 || num %(i+ 2)==0) {
                    return false;
                }
            }
            return true;
        }
    
    }
  • 相关阅读:
    Encoding
    F Takio与Blue的人生赢家之战
    D FFF团的怒火
    C Golden gun的巧克力
    B 倒不了的塔
    A jubeat
    17230 计算轴承半径
    10686 DeathGod不知道的事情
    10688 XYM-AC之路
    10692 XYM-入门之道
  • 原文地址:https://www.cnblogs.com/huangZ-H/p/10078862.html
Copyright © 2011-2022 走看看