數論——【模板】線性篩素數
阿新 • • 發佈:2019-02-17
題目來源
洛谷P3383【模板】線性篩素數https://www.luogu.org/problem/show?pid=3383
思路
線性篩素數模板題
時間複雜度:O(n)
程式碼(C++)
#include <cstdio> #include <bitset> using namespace std; bitset<10000010> g; int n,m,x,p[1000010],top=0; int main() { scanf("%d%d",&n,&m); g[0]=1; g[1]=1; for(int i=2;i<=n;++i) { if(g[i]==0) p[++top]=i; for(int j=1;j<=top&&p[j]*i<=n;++j) { g[i*p[j]]=1; if(i%p[j]==0) break; } } for(int i=1;i<=m;++i) { scanf("%d",&x); if(g[x]) printf("No\n"); else printf("Yes\n"); } return 0; }