問題 1525: [藍橋杯][演算法提高vip]找素數
時間限制: 1sec 記憶體限制: 128mb 提交: 1179 解決: 133
題目描述
給定區間[l, r] , 請計算區間中素數的個數。
資料規模和約定
2 < = l < = r < = 2147483647 r-l < = 1000000
輸入兩個數l和r。
輸出一行,區間中素數的個數。
樣例輸入
2 11
樣例輸出
5解題報告:用sqrt(r)以內的數篩掉r以內的所有合數,因為區間小於等於1e6開這麼大的陣列就夠了,陣列下標記錄的是這個數和l的相對差。注意該題的大優化。
#include#include#include#include#include#include#include#include#include#define il inline
#define x first
#define y second
typedef long long ll;
using namespace std;
const int n=1000010;
bool f[n];
bool t[n];
void init(ll l, ll r)
埃氏篩法求給定區間內素數個數
題目原型 給定整數a,b,請問區間內有多少個素數?應對策略 預備知識 埃氏篩法 思想是首先預設所有數都是素數,然後從2開始,對每個數字進行遍 歷,如果該數字是素數,那麼它的倍數就不是素數,與單獨判斷每個 數字是不是素數相比,如此可以大大減少判斷素數的時間。int prime max n bool i...
判斷區間內的素數個數
package method public class stest package method 編寫乙個有兩個執行緒的程式,第乙個執行緒用來計算2 100000之間的素數的個數,第二個執行緒用來計算100000 200000之間的素數的個數,最後輸出結果 author administrator ...
尤拉篩 素數 素數個數
素數個數 題目描述 求1,2,cdots,n1,2,n 中素數的個數。輸入輸出格式 輸入格式 1 個整數n。輸出格式 1 個整數,表示素數的個數。輸入輸出樣例 輸入樣例 1 複製 10輸出樣例 1 複製4說明 對於40 的資料,1 n 10 6 對於80 的資料,1 ln 10 7 對於100 的資...