search.sf 709 B

1234567891011121314151617181920212223242526272829
  1. #!/usr/bin/ruby
  2. # Composite numbers k where records occur for:
  3. #
  4. # lcm(gcd(k-1, lcm({p-1})), gcd(k+1, lcm({p+1})))
  5. #
  6. # where p are prime factors dividing k.
  7. var max = 0
  8. for k in (1..1e9) {
  9. k.is_composite || next
  10. var f = k.factor
  11. var g = lcm(gcd(k-1, f.lcm{.dec}), gcd(k+1, f.lcm{.inc}))
  12. if (g > max) {
  13. max = g
  14. print(k, ", ")
  15. }
  16. }
  17. __END__
  18. 4, 8, 15, 35, 63, 343, 377, 559, 1023, 1025, 8911, 16511, 25345, 139231, 1084159, 1556479,
  19. 4, 8, 9, 15, 35, 119, 195, 209, 231, 286, 377, 1105, 2015, 2465, 5719, 8695, 9879, 19669, 22359, 25345, 75701, 139231,
  20. 4, 8, 15, 35, 104, 119, 195, 209, 231, 286, 1105, 2015, 2465, 5719, 8695, 9879, 19669, 22359, 25345, 75701, 139231,