1007 素數對猜想 (20分)
讓我們定義
為:dn=
pn+1
−p
nd_ = p_ - p_
dn=pn
+1−
pn,其中pip_
pi是第i
ii個素數。顯然有d1=
1d_ = 1
d1=
1,且對於n
>
1n>1
n>1有dnd_
dn是偶數。「素數對猜想」認為「存在無窮多對相鄰且差為2的素數」。
現給定任意正整數n
(<10
5
)n(<10^)
n(<10
5),請計算不超過n
nn的滿足猜想的素數對的個數。
輸入格式:
輸入在一行給出正整數n。
輸出格式:
在一行中輸出不超過n的滿足猜想的素數對的個數。
輸入樣例:
20輸出樣例:
# -*- encoding: utf-8 -*-
import math
defget_primes
(n):
prime_list =[1
]*(n +1)
for i in
range(2
,int
(math.sqrt(n))+
1):if prime_list[i]
:for j in
range
(i *
2, n +
1, i)
: prime_list[j]=0
return
[idx for idx in
range(2
, n +1)
if prime_list[idx]
]if __name__ ==
'__main__'
: n =
int(
input()
) prime_list = get_primes(n)
pairs =
0for i in
range
(len
(prime_list)-1
):if prime_list[i +1]
- prime_list[i]==2
: pairs +=
1print
(pairs)
1007 素數對猜想 (20 分)
讓我們定義d n 為 d n p n 1 p n 其中p i 是第i個素數。顯然有d 1 1,且對於n 1有d n 是偶數。素數對猜想 認為 存在無窮多對相鄰且差為2的素數 現給定任意正整數n 10 5 請計算不超過n的滿足猜想的素數對的個數。輸入在一行給出正整數n。在一行中輸出不超過n的滿足猜想的...
1007 素數對猜想 (20 分)
讓我們定義d n 為 d n p n 1 p n 其中p i 是第i個素數。顯然有d 1 1,且對於n 1有d n 是偶數。素數對猜想 認為 存在無窮多對相鄰且差為2的素數 現給定任意正整數n 10 5 請計算不超過n的滿足猜想的素數對的個數。輸入在一行給出正整數n。在一行中輸出不超過n的滿足猜想的...
1007 素數對猜想 (20 分)
1007 素數對猜想 20 分 讓我們定義dn pn 1 p nd n p p n dn pn 1 pn 其中p ip i pi 是第i個素數。顯然有d1 1d 1 1 d1 1,且對於n 1有d n d n d n 是偶數。素數對猜想 認為 存在無窮多對相鄰且差為2的素數 現給定任意正整數n 10...