#P1472. 指定範圍的孿生素數對

指定範圍的孿生素數對

題目描述

孿生素數是指兩個相差為2的素數(例如:3和5、5和7、11和13)。編寫一個Python程序,提示用戶輸入兩個正整數`a`和`b`(保證`a < b`),找出並輸出區間`[a, b]`內所有的孿生素數對(每對輸出格式為“(p, p+2)”)。若區間內無孿生素數對,則提示“區間[a, b]內沒有孿生素數對。”。 

要求:實現高效的素數判斷邏輯(避免暴力遍歷所有小於n的數)。

輸入格式

兩個正整數`a`和`b`(用空格分隔,例如:10 50)

輸出格式

- 若存在孿生素數對:“區間[a, b]內的孿生素數對:” 後跟每個孿生素數對(每對佔一行)

- 若無:“區間[a, b]內沒有孿生素數對。”

Samples

["10 50","1 10","110 120"]
["區間[10, 50]內的孿生素數對:\r\n(11, 13)\r\n(17, 19)\r\n(29, 31)\r\n(41, 43)\r\n","區間[1, 10]內的孿生素數對:\r\n(3, 5)\r\n(5, 7)\r\n","區間[110, 120]內沒有孿生素數對。"]

原始資料

  • Zero1 題號:b473
  • Hydro 題號:Z1473
  • Locale:zh_TW
  • Display:open