#5217: java一直TLE(3s)


wentworth (Yison)

學校 : 不指定學校
編號 : 17862
來源 : [140.118.235.23]
最後登入時間 :
2011-06-19 09:02:54
a007. 判斷質數 | From: [140.118.235.23] | 發表日期 : 2011-06-19 09:45

import java.util.Scanner;
    public class java {
        public static void main(String[] args) {
            Scanner input = new Scanner(System.in);
            int number;
            while (input.hasNext()){
                number = input.nextInt();
                if(number<2 && number>2147483647)continue;
                else if(number==2 || number==3 || number==5){
                    System.out.println("質數");
                }
                else if(number%2==0){
                    System.out.println("非質數");
                }
                else{
                    for(int i=3; i*i<=number; i+=2){
                        if(number%i==0){
                            System.out.println("非質數");
                            break;
                        }else if((i+2)*(i+2)>number){
                            System.out.println("質數");
                            break;
                        }
                    }
                }
            }
        }
    
    }

 最近才初學java,請問要如何增加效率?

 
ZeroJudge Forum