2009-02-03 17:29:55來源不明
ACM 10699 10699 - Count the factors
與上一篇文章類似
/************************************************************/
- #include<stdio.h>
- #include<stdlib.h>
- #include<math.h>
- int math[1000];
- main()
- {
- int a,b,c,n,m=0;
- for(a=2;a<1000;a++)
- {
- int flag=0;
- for(b=2;b<=(int)sqrt(a);b++)
- {
- if(a%b==0)
- {
- flag=1;
- break;
- }
- }
- if(flag==0)
- {
- math[m]=a;
- m++;
- }
- }
- while(scanf("%d",&n)==1&&n!=0)
- {
- int time=0;
- printf("%d : ",n);
- for(a=0;a<m;a++)
- {
- int flag=0;
- while(n%math[a]==0)
- {
- n=n/math[a];
- flag=1;
- }
- if(flag==1) time++;
- if(n==1) break;
- }
- if(n!=1) time++;
- printf("%d\n",time);
- }
- return 0;
- }