HDU 1431 素數回文
有人問我這個問題。
個人感覺暴搜會TLE O(n*sqrt(n))。n=100000000;(判斷素數用2~sqrt(n)+1 去除)
還是枚舉好了。枚舉 1~10000,把他每一位存下來,回文數已知 left ,求 right ,然後組合起來。
例如 1 ,判斷 11 是否素數。
例如 10 ,判斷 101 是否素數, 判斷 1001 是否素數。
這樣復雜度就是 O(n^2)。 開始我 bool pa[100000000] 准備用標記來確定。結果MLE。
然後算了一下 總共有多少個數,最多 781 個。 int pa[1000] 就可以裝下了。
G++ 15ms
#include
#include
#include
#include
#include
#include