讓我們定義dn爲:dn=pn+1−pn,其中pi是第i個素數。顯然有d1=1,且對於n>1有dn是偶數。“素數對猜想”認爲“存在無窮多對相鄰且差爲2的素數”。
現給定任意正整數N
(<105),請計算不超過N
的滿足猜想的素數對的個數。
輸入格式:
輸入在一行給出正整數N
。
輸出格式:
在一行中輸出不超過N
的滿足猜想的素數對的個數。
輸入樣例:
20
輸出樣例:
4
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner s=new Scanner(System.in);
int n=s.nextInt();
ArrayList<Integer> list=new ArrayList<Integer>();
for(int i=2;i<=n;i++) {
String str=""+i;
if(f(i)==1) {
list.add(i);
}
}
int num=0;
int len=list.size();
for(int i=1;i<len;i++) {
if(list.get(i)-list.get(i-1)==2) {
num++;
}
}
System.out.print(num);
// System.out.println(list);
}
public static int f(int x) {
if(x==1||x%2==0&&x!=2) {
return 0;
}
for(int i=3;i<=Math.sqrt(x);i=i+2) {
if(x%i==0) {
return 0;
}
}
return 1;
}
}