cin,cout加上
cin.tie(0);
ios::sync_with_stdio(false);
除了2和3
一個想法
只要6n不是平方數
6n+1
6n -1
必為質數
不好意思潑個冷水,您的敘述是有誤的:
在 6n 不是平方數的狀況下,6n + 1、6n - 1 依然並不保證是質數,例如: 25 (6 × 4 + 1) 、 49 (6 × 8 + 1)、 …… 、 119 (6 × 20 - 1) 、 121 (6 × 20 + 1)等等。
且因為剔除了 6n 為平方數的狀況,使得某些質數不會被判斷到,例如: 37 (6 × 6 + 1)、1297(6 × 216 + 1)等等
以上。
cin,cout加上
cin.tie(0);
ios::sync_with_stdio(false);
除了2和3
一個想法
只要6n不是平方數
6n+1
6n -1
必為質數
不好意思潑個冷水,您的敘述是有誤的:
在 6n 不是平方數的狀況下,6n + 1、6n - 1 依然並不保證是質數,例如: 25 (6 × 4 + 1) 、 49 (6 × 8 + 1)、 …… 、 119 (6 × 20 - 1) 、 121 (6 × 20 + 1)等等。
且因為剔除了 6n 為平方數的狀況,使得某些質數不會被判斷到,例如: 37 (6 × 6 + 1)、1297(6 × 216 + 1)等等
以上。
我其實發完就有發現
難怪我過不了
但我後來又改了
cin,cout加上
cin.tie(0);
ios::sync_with_stdio(false);
可達到
AC (1.8s, 376KB) |
這樣就能過了
我其實發完就有發現
難怪我過不了
但我後來又改了
cin,cout加上
cin.tie(0);
ios::sync_with_stdio(false);
可達到
AC (1.8s, 376KB) |
這樣就能過了
加那兩行可能從TLE變成AC,但問題在於你採用一個錯誤的質數判斷法。
sorry
我講得有點怪
應該是
我改了一些地方
答案正確了
但又TLE
所以加上
cin.tie(0);
ios::sync_with_stdio(false);
就
AC (1.8s, 376KB) |
---------------------------------
其實6n+1
還是不錯用的
可以刷掉大部分數字
剩下就要靠其他判斷法了