173 Using up to one million tiles how many different hollow square laminae can be formed.sf 384 B

123456789101112131415161718192021222324
  1. #!/usr/bin/ruby
  2. # Daniel "Trizen" Șuteu
  3. # License: GPLv3
  4. # Date: 16 May 2017
  5. # https://github.com/trizen
  6. # https://projecteuler.net/problem=173
  7. # Runtime: 35.684s (previously: 43.581s)
  8. var count = 0
  9. var tiles = 1e6
  10. for k (1 .. tiles>>2) {
  11. var sum = 0
  12. for j (k+2 .. Inf `by` 2) {
  13. sum += (2*j + 2*(j-2))
  14. (sum <= tiles) ? ++count : break
  15. }
  16. }
  17. say count