512 Sums of totients of powers.jl 444 B

12345678910111213141516171819202122232425262728293031323334
  1. #!/usr/bin/julia
  2. # Daniel "Trizen" Șuteu
  3. # License: GPLv3
  4. # Date: 29 September 2016
  5. # Website: https://github.com/trizen
  6. # https://projecteuler.net/problem=512
  7. # Runtime: ~20 min
  8. using Primes
  9. @inline function eulerphi(n::Int64)
  10. for p in keys(factor(n))
  11. n -= div(n, p)
  12. end
  13. n
  14. end
  15. function g(n::Int64)
  16. sum = 0
  17. for k in 0:div(n, 2)-1
  18. sum += eulerphi(2*k + 1)
  19. end
  20. sum
  21. end
  22. println(g(5 * 10^8))