fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3.  
  4.  
  5.  
  6. int f(long long n)
  7. {
  8. long long sum=0,c=0;
  9.  
  10.  
  11. for(int i=2;i<=sqrt(n);i=i+1)
  12. {
  13. if(n%i==0)
  14. {
  15. sum=sum+i;
  16. c=c+1;
  17. }
  18. while(n%i==0)
  19. {
  20. n=n/i;
  21. }
  22.  
  23. }
  24. if((c!=0)&&(n>2))
  25. {
  26. sum = sum+n;
  27. c= c+1;
  28. }
  29. if(c==0)
  30. return 1;
  31. else
  32. return f(sum)+c;
  33. }
  34.  
  35. int main()
  36. {
  37.  
  38. int t;
  39. scanf("%d",&t);
  40. long long num;
  41. while(t--)
  42. {
  43. scanf("%lld",&num);
  44. printf("%d\n",f(num));
  45. }
  46. }
  47.  
Success #stdin #stdout 0s 3300KB
stdin
6
2
3
4
5
20
123456 
stdout
1
1
2
1
3
6