fork download
  1. #include <stdio.h>
  2. #define FIN "fractii.in"
  3. #define FOUT "fractii.out"
  4.  
  5. void computePHI(long long int n, long long int *ptr) {
  6. long long phi[n+1];
  7. long long sum = 0;
  8. for(int i = 1; i <= n; ++i) phi[i] = i;
  9. for(int i = 2; i <= n; ++i) {
  10. //daca este numar prim
  11. if(phi[i]==i) {
  12. for(int j = i; j <= n; j+=i) {
  13. phi[j] = phi[j] / i * (i - 1);
  14. }
  15. }
  16. sum+=phi[i];
  17. }
  18. *ptr=(sum<<1)+1;
  19. }
  20.  
  21. int main(int argc, char const *argv[]) {
  22. long long n, ans;
  23. //freopen(FIN, "r", stdin);
  24. //freopen(FOUT, "w", stdout);
  25. scanf("%lld",&n);
  26. computePHI(n,&ans);
  27. printf("%lld",ans);
  28. return 0;
  29. }
  30.  
Success #stdin #stdout 0.01s 5292KB
stdin
4
stdout
11