1234567891011121314151617181920 |
- #!/usr/bin/ruby
- # Daniel "Trizen" Șuteu
- # License: GPLv3
- # Date: 30 April 2017
- # https://github.com/trizen
- # https://projecteuler.net/problem=601
- # Runtime: 0.115s
- func count(n, k) {
- var L = lcm(1..n)
- var period = lcm(L, n + 1)/L
- var count = floor((k - 2) / L)
- count - floor(count / period)
- }
- say sum(1..31, {|k| count(k, 4**k) })
|