PAT 1007 素数对猜想 (20 分)(Java)

题目描述:

输入格式:

  输入在一行给出正整数N。

输出格式:

  在一行中输出不超过N的满足猜想的素数对的个数。

输入样例:

20

输出样例:

4

实现代码(Java):

import java.util.Scanner;
import java.util.ArrayList;

public class Main {
	public static boolean isPrime(int p){
		if(p==1){
	        return false;
	    }
	    if(p%2==0&&p!=2){
	    	return false;
	    }
	    for(int i=3;i<=Math.sqrt(p);i+=2){	
	        if(p%i==0){
	            return false;
	        } 
	    }
	    return true;
	}
	
	public static void main(String[] args){
		Scanner in = new Scanner(System.in);
			int n = in.nextInt();
			ArrayList list = new ArrayList();
			int account = 0;
			
			for(int i =1 ;i<=n ;i++){
				if(isPrime(i)){
					list.add(i);
				}
			}
			for(int i=0 ;i<list.size()-1 ;i++){
				if((int)list.get(i+1)-(int)list.get(i)==2){
					account++;
				}
			}
			System.out.println(account);
  	}
}
全部评论

相关推荐

Noob1024:一笔传三代,人走笔还在
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务