Chinaunix首页 | 论坛 | 博客
  • 博客访问: 56538
  • 博文数量: 29
  • 博客积分: 667
  • 博客等级: 上士
  • 技术积分: 300
  • 用 户 组: 普通用户
  • 注册时间: 2010-04-11 15:55
文章分类
文章存档

2012年(2)

2011年(27)

我的朋友
最近访客

分类: C/C++

2011-10-06 14:29:29


点击(此处)折叠或打开

  1. #include <iostream>
  2. using namespace std;
  3. const int MAXN = 65535;
  4. bool prime[MAXN + 1];

  5. int main(){
  6.     for (int i = 0; i <= MAXN; ++i) { //对非偶数标true
  7.         prime[i] = true;
  8.         if (!(i & 1)) {
  9.             prime[i] = false;
  10.         }
  11.     }
  12.     prime[1] = fales; //0和1非素数标fales
  13.     prime[2] = true; //对2标true


  14.     for (int i = 3; i * i <= MAXN; i += 2) {
  15.         if (prime[i]) {
  16.             for (int j = i + i; j <= MAXN; j += i) { //碰见true往后加i,标false
  17.                 prime[j] = false;
  18.             }
  19.         }
  20.     }
  21.     return 0;
  22. }

阅读(291) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~