HDU 2136 Largest prime factor 参考代码
来源:互联网 发布:python将字典传入函数 编辑:程序博客网 时间:2024/06/05 20:49
#include <iostream>#include <vector>#include <cmath>using namespace std;const int MAX=1000001;bool isPrime[MAX];//isPrime[i]=true表示是素数,false表示不是int indexes[MAX]; //存放素数因子的序号void eraosthenes(){fill(isPrime,isPrime+MAX,true);//假设0~MAX都是素数isPrime[0]=isPrime[1]=false; //把0,1筛去 int n=sqrt((double)MAX); for(int i=2; i<=n; i++) {if (isPrime[i]==false) continue; for(int j=i*i; j<MAX; j+=i) {if (isPrime[j]==false) continue; isPrime[j]=false; } }}void createIndexes(){ eraosthenes(); int i,k=1; for(i=2; i<MAX; i++) if (isPrime[i]==true) indexes[i]=k++; int m=MAX/2; for(i=2; i<=m; i++) { if (isPrime[i]==true) { int pos=2*i; while(pos<MAX) { indexes[pos]=indexes[i]; pos+=i; } } }}bool run(){ int n; if (scanf("%d",&n)==EOF) return false; printf("%d\n",indexes[n]); return true;}int main(){ createIndexes(); while(run()); return 0;}
0 0
- HDU 2136 Largest prime factor 参考代码
- HDU 2136 Largest prime factor
- HDU 2136 Largest prime factor
- hdu 2136 Largest prime factor
- HDU 2136 Largest prime factor
- hdu 2136 Largest prime factor
- hdu 2136 Largest prime factor
- HDU 2136 Largest prime factor
- HDU 2136 Largest prime factor
- HDU 2136 Largest prime factor
- HDU 2136 Largest prime factor
- HDU 2136 Largest prime factor
- hdu 2136 Largest prime factor
- HDU 2136 Largest prime factor
- HDU 2136 Largest prime factor
- HDU 2136 Largest prime factor
- hdu 2136 Largest prime factor
- hdu 2136 Largest prime factor
- Java IO 目录文件复制与删除以及目录大小与文件个数统计
- 手把手教你用NDK9编译ffmpeg2.4.2
- hdu - 2669 - Romantic(扩展欧几里得)
- mina整合spring ,服务端反向发送消息到客户端 完整实例
- 十月学习总结
- HDU 2136 Largest prime factor 参考代码
- 听姚明的,鼓励身体对抗!
- [uva 11916]Emoogle Grid 数学 BSGS
- 寻找数组最大K个数
- Revenge of LIS II (hdu 5087 LIS)
- VS使用过程中的常用技巧
- onBlur事件与onfocus事件(js)
- 辗转相除法的证明
- 【Android】弹出菜单popupmenu