數學 SSL 1210 質數

2021-08-30 04:12:32 字數 608 閱讀 2098

求出l

ll到r

rr中質數的個數和由兩個質數乘起來得到的數的個數總和,有t

tt組資料。

先篩質數,再把滿足條件的數標記起來,用字首和求區間的總和。

#include

#include

using

namespace std;

const

int maxn =

10000000

;int q, l, r;

int s[maxn +1]

;bool islike[maxn +1]

, isprime[maxn +1]

;void

fastin

(int

&a)void

fastout

(int a)

void

init()

}for

(int i =

1; i <= maxn; i++

) s[i]

= s[i -1]

+ islike[i]

;//字首

}int

main()

}

最佳遊覽路線 SSL 1210

description 某旅遊區的街道成網格狀 見圖 其中東西向的街道都是旅遊街,南北向的街道都是林蔭道。由於遊客眾多,旅遊街被規定為單行道。遊客在旅遊街上只能從西向東走,在林蔭道上既可以由南向北走,也可以從北向南走。阿隆想到這個旅遊區遊玩。他的好友阿福給了他一些建議,用分值表示所有旅遊街相鄰兩個路...

計數質數 數學

統計某個範圍內的素數,最簡單的方法就是暴力解法。int index 0 for int i 2 i 12 i if flag system.out.println index 面對比較大的範圍時,暴力解法效率就很慢了,這時我們該採用厄拉多塞篩法。宣告乙個最大範圍的布林型別陣列,判斷這一位上有沒有被標...

數學 數論 質數處理

定義 乙個數的因數只有1和本身,那麼這個數是質數。質數的判斷 乙個數n如果不是質數那麼在2 sqr t n sqrt n 一定有他的因子,於是 bool isprime int n else return false 但是在大量元素中,比如1 1 e61 1e6中的質數,再用上面的樸素演算法,就有些...