线性筛 数学

线性筛。注意循环终止条件不要写成判断,否则及影响效率又可能导致re

1 for(int i = 2;i <= m;i++){
2     if(!not_p[i])prime[++cntp] = i;
3     for(int j = 1;j <= cntp;j++){
4         if(i*prime[j] > m)break;
5         not_p[i*prime[j]] = 1;
6         if(i%prime[j] == 0)break;
7     }
8 }
View Code

 

posted @ 2019-10-15 23:19  TIH_HIT  阅读(102)  评论(0编辑  收藏  举报