fork(1) download
  1. #include<iostream>
  2. #include<algorithm>
  3. #include<string>
  4. #include<vector>
  5. #include<cstdio>
  6. using namespace std;
  7. bool x[101];
  8. vector<long long>prime;
  9. vector<long long>kos_ki;
  10. int main()
  11. {
  12. long long n=100;
  13. prime.push_back(2);
  14. long long i,j,k;
  15. for(i=3;i*i<=n;i=i+2)
  16. {
  17. if(x[i]==0)
  18. {
  19. for(j=i*i;j<=n;j=j+i+i)
  20. {
  21. x[j]=1;
  22. }
  23. }
  24. }
  25. for(i=3;i<=n;i=i+2)
  26. {
  27. if(x[i]==0)
  28. prime.push_back(i);
  29. }
  30. long long p,sum;
  31. while(scanf("%lld",&p)!=EOF)
  32. {
  33. if(p==0)
  34. break;
  35. for(j=0;j<prime.size();j++)
  36. {
  37. if(prime[j]>p)
  38. break;
  39. sum=0;
  40. for(k=prime[j];k<=p;k=k*prime[j])
  41. {
  42.  
  43. sum=sum+(p/k);
  44. }
  45. kos_ki.push_back(sum);
  46. }
  47. printf("%3lld! =",p);
  48. for(k=0;k<kos_ki.size();k++)
  49. {
  50.  
  51. printf("%3lld",kos_ki[k]);
  52. if(k%14==0&&k>0)
  53. {
  54. printf("\n");
  55. printf(" ");
  56. }
  57.  
  58. }
  59. printf("\n");
  60. kos_ki.clear();
  61. }
  62. }
  63.  
Success #stdin #stdout 0s 3236KB
stdin
100
stdout
100! = 97 48 24 16  9  7  5  5  4  3  3  2  2  2  2
        1  1  1  1  1  1  1  1  1  1