思路:由於本題資料範圍較大,因此如果採用常規的素數判斷方法以及較常用的埃氏篩(複雜度o(nloglogn))都是會被卡掉的,而出題人也是希望採用線性(尤拉)篩的方式解決這道題。由於是板子題,就不再放思路了,直接上**:
#include#include#include#include#include#include#include#include#includeusing namespace std;
#define maxn 100000005
#define ll long long
bool isprime[maxn];
vectorprimes;
void init(int n) }}
int main(void)
return 0;
}
洛谷 3383 模板 線性篩素數
問題描述 如題,給定乙個範圍n,你需要處理m個某數字是否為質數的詢問 每個數字均在範圍1 n內 輸入 第一行包含兩個正整數n m,分別表示查詢的範圍和查詢的個數。接下來m行每行包含乙個不小於1且不大於n的整數,即詢問該數是否為質數。輸出 輸出包含m行,每行為yes或no,即依次為每乙個詢問的結果。樣...
洛谷 3383 模板 線性篩素數
題目描述 如題,給定乙個範圍n,你需要處理m個某數字是否為質數的詢問 每個數字均在範圍1 n內 輸入輸出格式 輸入格式 第一行包含兩個正整數n m,分別表示查詢的範圍和查詢的個數。接下來m行每行包含乙個不小於1且不大於n的整數,即詢問該數是否為質數。輸出格式 輸出包含m行,每行為yes或no,即依次...
洛谷 P3383 模板 線性篩素數
題目大意 如題,給定乙個範圍n,你需要處理m個某數字是否為質數的詢問 每個數字均在範圍1 n內 時空限制 500ms 128m 資料規模 對於30 的資料 n 10000,m 10000 對於100 的資料 n 10000000,m 100000 題解 數學方法 線性篩素數 很多人都是找到乙個素數,...