素数对猜想之python3实现
生活随笔
收集整理的這篇文章主要介紹了
素数对猜想之python3实现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目
讓我們定義d?n??為:d?n??=p?n+1???p?n??,其中p?i??是第i個素數。顯然有d?1??=1,且對于n>1有d?n??是偶數。“素數對猜想”認為“存在無窮多對相鄰且差為2的素數”。
現給定任意正整數N(<),請計算不超過N的滿足猜想的素數對的個數。
輸入格式:
輸入在一行給出正整數N。
輸出格式:
在一行中輸出不超過N的滿足猜想的素數對的個數。
輸入樣例:
20輸出樣例:
4解該題的思路有兩個點,如何判斷一個數是否是素數,判斷相鄰的素數之差是否為2
假設一個數為n,判斷n是否為素數方法是用n去除從2到n的算術平方根之間的整數,如果能除盡,n為合數,如果都除不盡,n就是素數,python代碼實現如下 import time start = time.perf_counter() def judgePrime(n):for i in range(2, int(n**0.5)+1):if(n % i == 0):return Falsereturn True num = int(input()) arr = [2, 3] cnt = 0 if(num > 4):for i in range(4, num+1):res = judgePrime(i)if(res):if(i - arr[len(arr)-1] == 2):cnt += 1 arr.append(i) print(cnt,time.perf_counter()-start)
?
轉載于:https://www.cnblogs.com/renbo/p/8733771.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的素数对猜想之python3实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 宝塔面板进行ssl配置,显示待域名确认
- 下一篇: Python成长之路【第七篇】:Pyth