Largest prime factor 【素筛变形】
来源:互联网 发布:c语言杨辉三角六种 编辑:程序博客网 时间:2024/05/16 06:42
Everybody knows any number can be combined by the prime number.
Now, your task is telling me what position of the largest prime factor.
The position of prime 2 is 1, prime 3 is 2, and prime 5 is 3, etc.
Specially, LPF(1) = 0.
Input
Each line will contain one integer n(0 < n < 1000000).
Output
Output the LPF(n).
Sample Input
1
2
3
4
5
Sample Output
0
1
2
1
3
一定要理解埃筛的的原理,其实就是倍数关系都被kill。 原理懂了,就会好很多 。
代码
#include<stdio.h>#include<math.h>#include<iostream>using namespace std;const int MAXN = 1e6+10;int su[MAXN]={1,1,0};int pos[MAXN]={0};void dabiao(){ int ge=1; for(int i=2;i<MAXN;i++) if(!su[i]){ pos[i]=ge++;//i 这个素数 在素数表中是第几个。 for(int j=i;j<MAXN;j+=i) su[j]=i;// 这时,所有的数字都是素数i的倍数, //不一定此时的素数i就是最大的,但是i是由小到大枚举的, //每次都会更新,最后总会是最大的素因子 }}int main(){ int n;dabiao(); while(scanf("%d",&n)!=EOF){ printf("%d\n",pos[su[n]]); } return 0;}
阅读全文
0 0
- Largest prime factor 【素筛变形】
- Largest prime factor 最大素因子
- 素数筛 HDOJ 2136 Largest prime factor
- hdu-2136-Largest prime factor [素数筛]
- HDU2136:Largest prime factor
- Largest prime factor
- Largest prime factor
- Largest prime factor
- hdoj Largest prime factor
- hdu Largest prime factor
- Largest prime factor 2136
- Largest prime factor
- Largest prime factor
- HDU2136 Largest prime factor
- hdoj Largest prime factor
- Largest prime factor
- hdu2136 Largest prime factor
- hdu Largest prime factor
- 【剑指offer】面试题27:二叉树的镜像
- 用于分页的PageBean
- Android 自定义支持快速搜索筛选的选择控件
- 图的深度和广度优先遍历
- 单双击 判断
- Largest prime factor 【素筛变形】
- ENVI大气校正FLAASH工具中比例因子说明
- 大神等于一万小时代码训练
- java 中何时考虑成员变量和局部变量的作用域,何时考虑值传递及引用传递?
- (poj1190)生日蛋糕(DFS和数学知识,剪枝!)
- 有关Firebug插件
- 实现一颗二叉树的层序遍历/给定一个整数N,那么N的阶乘N!末尾有多少个0呢
- 寻找三角形
- MySQL入门之创建、更新、修改、复制、查看表