BIT 1054 Largest prime factor

来源:互联网 发布:数据架构师是做什么的 编辑:程序博客网 时间:2024/05/16 14:42

题目大意:在素数表中,2的编号是1,3的编号是2,5的编号是3。现在给出N(N<1000000),求N的最大的质因子在素数表中的编号

 

考察点:筛选法求素数

 

思路分析:在做筛选法的时候开个数组记录他的最大质因子就行了,这个数是由哪个数的倍速筛出来的,那这个数的最大的质因子就是它。

 

#include<stdio.h>int f[1000001];void yuchuli(){     int i,s,j;     memset(f,0,sizeof(f));     s=1;     for (i=2;i<=1000000;i++)       if (f[i]==0)       {         j=1;         while (i*j<1000000) {f[i*j]=s;j++;}         s++;       }}         int main(){    yuchuli();    int n;    while (scanf("%d",&n)!=EOF)      printf("%d\n",f[n]);    return 0;}


 

原创粉丝点击