UVA
来源:互联网 发布:白鹿原小说败笔 知乎 编辑:程序博客网 时间:2024/06/05 09:37
#include<cstdio>#include<cmath>#include<set>using namespace std;/*输入1-(2^64-1) 之间的超级幂,(即,一个数至少可以分解为两个数的幂)枚举底数,其幂不超过ceil(64 * log(2) / log(i)) - 1,且幂必须为合数*/typedef unsigned long long LL;const int maxn=100+5;int p,prime[maxn];bool is_prime[maxn];//是否为素数//素数筛void sieve(){ for(int i=2;i<maxn;i++) { is_prime[i]=1; } for(int i=2;i<maxn;i++) { if(is_prime[i]) { prime[p++]=i; for(int j=2*i;j<maxn;j+=i) { is_prime[j]=0; } } }}int main(){ //freopen("out.txt","w",stdout); sieve(); set<LL>ans; ans.insert(1);//特殊的超级幂 LL maxT=1<<16;//设定最大底数 for(LL i=2;i<maxT;i++)//枚举底数 { LL cnt=ceil(64 * log(2) / log(i)) - 1;//幂的最大值 LL x=i; for(LL j=2;j<=cnt;j++)//遍历幂 { x*=i; if(is_prime[j]==0)//幂为合数 { ans.insert(x);//插入集合 } } } set<LL>::iterator it; for(it=ans.begin();it!=ans.end();it++) { printf("%llu\n",*it); } return 0;}
阅读全文
0 0
- uva
- UVA
- UVA
- UVA
- uva
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- 分拆素数和
- 文档编写
- 进程控制 (二) & Others
- Java中static关键字的五种用法详解(含代码举例)
- getWriter() has already been called for this response
- UVA
- MySQL中常见的字符串处理函数
- java,js,jQuery字符串去空格
- 关于Python安装图像库PIL的方案
- MFC(VC,C++)下,OCX内使用另外一个OCX方法(内嵌OCX)-《零度屏幕录像软件》之笔记一
- 浅谈桌面启动一个应用Activity
- 11muduo_base库源码分析(二)
- spring boot 常用注解解析
- 自动装箱和自动拆箱