Dut oj1041 打表筛选素数 + log2函数使用
来源:互联网 发布:apache 去掉index.php 编辑:程序博客网 时间:2024/06/08 00:45
想着把很久以前做的题目再回顾一下啊
这个题目就是给两个整数 ab 先求出ab之间非素数的整数个数 包括ab
然后再求这个数的log+1
改进了两个地方 一个是log用cmath的库函数 log2
另一个是 这次素数打表了
bool型的 100w的一个数组正好是1mb
#include<cstdio>#include<cstring>#include<iostream>#include<cmath>using namespace std;const int maxn=1000001;bool arr[maxn];void init(){ int i,j; memset(arr,0,sizeof(arr)); arr[1]=0; arr[2]=1; for(i=3;i<maxn;i+=2) arr[i]=1; for(i=3;i<maxn;++i) { if(arr[i]) { for(j=i+i;j<maxn;j+=i) arr[j]=0; } }}/*int log(int a){ int ca=1; for(int i=0;i<1000;i++) { if(ca>a) { return i; break; } else ca*=2; }}*/int main(){ init(); int a,b,i,counter=0; scanf("%d %d",&a,&b); for(int i=a;i<=b;++i) { if(!arr[i]) counter++; } int res=(int)log2(counter)+1; printf("%d\n",res); // printf("%d\n",log(counter)); return 0;}
- Dut oj1041 打表筛选素数 + log2函数使用
- 筛选法打素数表
- 筛选法素数打表
- 筛选法求素数 打表
- LightOj 1370(素数筛选打表)
- 杭电 4548 美素数 (筛选素数 打表 )
- 素数打表(三种筛选法)
- 筛选素数,打表,区间内特定元素的个数
- hdu 1999 不可摸数 筛选素数 两次打表
- HDU 2136 Largest prime factor(素数筛选+打表)
- log2 函数
- 杭电 2098 分拆素数和 (筛选素数 打表 打表在输入数据之后)
- HDUOJ1215(筛选、打表)
- 欧拉函数筛选素数
- dut OJ 1277 素数测试
- 顺序表筛选素数
- POJ 3006 Dirichlet's Theorem on Arithmetic Progressions (筛选法素数打表)
- poj 3292 Semi-prime H-numbers 素数变形+打表+筛选法
- ubuntu连接不上secureCRT 和cuteFTP问题
- 第一次自己见客户
- 程序员发展应该尽早明白13个道理
- PHP 数字转化为自定义长度的字符串[前插后入]
- 组件设计原则之概念篇(二)
- Dut oj1041 打表筛选素数 + log2函数使用
- 在自己的台式机上把oracle和pl/sql developer安装成功并且可以用了
- jstl 截取字符串
- dut oj 1039 求最小的 n个数不能组成的数字
- linq插入数据之后获取插入数据的自增长ID
- SharePoint 2013 中开发可以被标记为未读和已读的列表之效果篇
- 在 Windows 上安装和使用 GNUstep 和 Objective-C
- dut OJ 1277 素数测试
- 发现一个用PHP 取GPS数据定位的类