00-自测2. 素数对猜想 (20)

让我们定义 dn 为:dn = pn+1 - pn,其中 pi 是第i个素数。显然有 d1=1 且对于n>1有 dn 是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。

现给定任意正整数N (< 105),请计算不超过N的满足猜想的素数对的个数。

输入格式:每个测试输入包含1个测试用例,给出正整数N。

输出格式:每个测试用例的输出占一行,不超过N的满足猜想的素数对的个数。

输入样例:
20
输出样例:
4

 1 import java.util.Scanner;
 2 
 3 public class Main
 4 {
 5     public static boolean jud(int x)
 6     {
 7         for(int i=2;i<=Math.sqrt(x);i++)
 8             if(x%i==0)
 9                 return false;
10         return true;
11     }
12     public static void main(String[]args)
13     {
14         //System.out.println("....");
15         Scanner in=new Scanner(System.in);
16         int N=in.nextInt();
17         int p1,p0;
18         int cout=0;
19         p0=2;
20         p1=3;
21         for(int i=4;i<=N;i++)
22         {
23             if(jud(i))
24             {
25                 p0=p1;
26                 p1=i;
27                 if(p1-p0==2)
28                     cout++;
29             }
30         }
31         System.out.println(cout);
32     }
33 }

 

posted @ 2015-04-07 00:38  打小孩  阅读(186)  评论(0编辑  收藏  举报