#45203: 判斷質數不需要複雜的演算法,簡單的試除法就可以


sam851015@gmail.com (多挖鼻孔有益身心健康)

學校 : 臺中市立惠文高級中學
編號 : 277705
來源 : [123.192.228.253]
最後登入時間 :
2025-03-11 12:39:29
e795. p2.質數日 -- 2019年12月TOI新手同好會 | From: [123.192.228.253] | 發表日期 : 2025-01-25 11:39

感覺其他人的解題心得想太複雜了,最簡單的試除法就可以,不會TLE

 

質數判斷一般就是從試除法、篩法、米勒拉賓算法,這三個挑一個出來用

可以參考 演算法筆記

 

這題的測資不殘忍,試除法就能搞定。

試除法很簡單,就是測試各種數字,一個一個除,如果能被任何一個比他小的數字整除,那他就不是質數。

不過需要優化,優化的細節可以看這篇解題報告: a121 質數判斷優化

 

大意就是只需要試除到 $sqrt{n}$

還有每六個數字一個循環,除了 2 和 3 外,其他質數必定在 $6n \pm 1$ 的範圍內

 

剩下就是判斷質數日的邏輯有沒有做對了

 

做完這題的可以去寫 e368 ,基本上是一樣的題目

 

 
ZeroJudge Forum