筛法求素数
2016-03-14 18:28
288 查看
#include <iostream> #include<math.h> using namespace std; typedef long long ll; #define maxn 10000000 bool IsPrime[maxn]; void init() { ll i = 2; for(i;i < maxn; i ++) { IsPrime[i] = true; } IsPrime[0] = IsPrime[1] = false; } int main() { ll a,b,sum; init(); while(cin >> a >> b) { ll i,j; for(i = 1;i <= a;i ++) { if(IsPrime[i] == true) { for(j = 2;i*j <= b;j ++) IsPrime[i*j] = false; } } ll ans = 0; for(i = a;i <= b;i ++) { if(IsPrime[i]) ans ++; } cout << ans << endl; } return 0; }
相关文章推荐
- Codis 的设计与实现 Part 3
- 使用PowerDesigner进行面向对象分析与UML建模
- Swift 2.0 封装图片折叠效果
- linux Centos7 安装Samba服务
- Codis 的设计与实现 Part 2
- mysql create trigger and procedure demo
- 获取用户登录的设备类型 系统+版本号
- Unix下C程序内存泄漏检测工具Valgrind安装与使用
- 算法起步(3)抽签问题—合二为一(上)
- Codis 的设计与实现 Part 1
- 机器学习实战-第三章决策树-代码理解-读书笔记
- CABasicAnimation的简单使用
- 参考博客
- 实现对dom元素的排序
- 找不到ServiceRegistryBuilder()函数的解决方法
- Android中的Service 与 Thread 的区别
- shareSDK微博分享总是在发布界面跟登录授权界面跳转
- 【hdu2298】Toxophily——三分+二分
- JWS 批注参考WebService注解
- set中的greater()以及set的一些用法