nyoj 最大素因子
来源:互联网 发布:种子填充算法例子 编辑:程序博客网 时间:2024/04/29 15:16
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=520
思路:
1.赛选法打素数表;
2.求素数因子;
3.二分法找序号;
代码如下:
#include <iostream>#include <stdio.h>#include<math.h>#include<string.h>using namespace std;const int MAX =1000001;bool a[MAX];int b[MAX];int erfen(int left,int right,int m){ while(right-left>1) { int mid=(left+right)/2; if(b[mid]==m) return mid; else if(b[mid]>m) right=mid; else left=mid; } return -1;}int is_prime(){ memset(a,true,sizeof(a)); int i,j; for(i=2;i<MAX/2;i++) { if(a[i]) { for(j=i<<1;j<=MAX;j+=i) { a[j]=false; } } } j=1; b[0]=1; for(i=2;i<MAX;i++) { if(a[i]) { b[j]=i; j++; } } return j;}main(){ int i,j,m; int max; int v=is_prime(); while(~scanf("%d",&m)) { if(m==1) { printf("0\n"); continue; } max=0; for(i=2;i<=sqrt(m);i++) { while(m!=1) { if(m%i==0) { m/=i; } else break; } max=i; } max=m==1?max:m; printf("%d\n",erfen(0,v,max)); }}
- nyoj 最大素因子
- NYOJ - 最大素因子
- nyoj-最大素因子
- NYOJ 520 最大素因子
- Nyoj 520 最大素因子
- nyoj-520-最大素因子
- NYOJ 520 最大素因子
- nyoj-520-最大素因子
- NYOJ 520 最大素因子
- NYOJ-520 最大素因子【数论】
- NYOJ 最大素因子 南工520
- nyoj 520 最大素因子(打表)
- HDU Largest prime factor && nyoj 520 最大素因子【素数】
- acm-最大素因子
- 最大素因子
- NYOJ520 最大素因子
- nyist 最大素因子
- 最大素因子
- Distributional hypothesis
- 关注生活,创新自然
- load_elf_binary中使用的内存映射机制
- nginx 301 跳转
- 如何取得鼠标在网页上的位置
- nyoj 最大素因子
- Java常用的性能测试工具记录
- 轻型的JAVA包 - Jodd
- 6款常用的Java开源报表制作工具
- TCP & UDP
- 用Python实现的三种排序算法
- !!!Chapter 6 Statement
- !!!Things to Learn
- Linux中Shell脚本的符号说明