Advertisement
Guest User

Untitled

a guest
May 6th, 2016
302
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.67 KB | None | 0 0
  1.  
  2.  
  3. #include <cstdlib>
  4. #include <cctype>
  5. #include <cstring>
  6. #include <cstdio>
  7. #include <cmath>
  8. #include <algorithm>
  9. #include <vector>
  10. #include <string>
  11. #include <iostream>
  12. #include <sstream>
  13. #include <map>
  14. #include <set>
  15. #include <queue>
  16. #include <stack>
  17. #include <fstream>
  18. #include <numeric>
  19. #include <iomanip>
  20. #include <bitset>
  21. #include <list>
  22. #include <stdexcept>
  23. #include <functional>
  24. #include <utility>
  25. #include <ctime>
  26.  
  27. using namespace std;
  28.  
  29.  
  30.  
  31. /*bool cmp ( int a , int b )
  32. {
  33. return (a>b);
  34. }
  35.  
  36. int gcd ( int a , int b )
  37. {
  38. return b==0 ? a : gcd ( b , a%b );
  39. }
  40.  
  41. long long a[300006];
  42.  
  43. bool prime [10000000];
  44.  
  45. void sieve ( )
  46. {
  47. prime[2]=true;
  48. for ( int i=4 ; i<=10000000 ; i+=2 )
  49. {
  50. prime [i]=false; prime[i-1]=true;
  51. }
  52. for ( int i=3 ; i<=3400 ; i+=2 )
  53. {
  54. if ( prime[i] )
  55. {
  56. for ( int j=i*i ; j<=10000000 ; j+=2*i )
  57. {
  58. prime[j]=false;
  59. }
  60. }
  61. }
  62.  
  63. }
  64.  
  65. bool p( long long x )
  66. {
  67. if ( x%2==0 ) { return 0; }
  68. for ( int i=3 ; i*i<=x ; i+=2 )
  69. {
  70. if ( x%i==0 ) { return 0; }
  71. }
  72. return 1;
  73.  
  74. }*/
  75.  
  76. int phi( int n )
  77. {
  78. double res = n;
  79.  
  80. for ( int i=2 ; i*i<=n ; i++ )
  81. {
  82. if ( n%i==0 )
  83. {
  84. while ( n%i==0 ) { n/=i; }
  85. res *= ( 1.0 - ( 1.0/i ) );
  86. }
  87.  
  88.  
  89. }
  90. // if number n as a whole is prime number then the answer is n-1;
  91. if ( n>1 )
  92. {
  93. res *= ( 1.0 - ( 1.0/n ) );
  94. }
  95.  
  96.  
  97. return (int) res;
  98.  
  99.  
  100.  
  101. }
  102.  
  103.  
  104.  
  105. int main()
  106. {
  107.  
  108. int n;
  109. cin>>n;
  110.  
  111.  
  112. cout<<phi( n )<<endl;
  113.  
  114.  
  115.  
  116.  
  117. return 0;
  118. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement