HDU 2136 Largest prime factor

 

http://acm.hdu.edu.cn/showproblem.php?pid=2136

 

解题思路:用筛选法,求出输入的N值最大的素数的编号

 

#include<stdio.h> #define size 1000001 int prime[size]; int main() { int locate=0; int n,i,j; for(j=2;j<size;j++) prime[j]=-1; prime[1] = 0; /*筛选位置*/ for(i=2; i<size; i++) { if(prime[i]==-1) { locate++; for(j=i;j<size;j+=i) prime[j]=locate; } } while(scanf("%d",&n)!=EOF) printf("%d/n",prime[n]); return 0; }

你可能感兴趣的:(HDU 2136 Largest prime factor)