RubyのIntegerクラスに「最大公約数(Greatest Common Divisor)」と「最小公倍数(Least (Lowestとも) Common Multiple)」を求めるメソッドがあった。それ、知らんかっとんてんちんとんしゃん…。
その名も「gcd」、「lcm」、「gcdlcm」。MathクラスにもPrimeクラスにもこれ系のメソッドはなかったので、テッキリRubyの標準ライブラリには存在しないのだと思い込み、毎回自分で書いていた(競技プログラミングでは、時々「最大公約数」を求めたい時がある)。
Integerクラスなので、整数オブジェクトそのものにドット記法でメソッド名と引数を記述する。例えば、12と18の最大公約数と最小公倍数を求めたいなら、
p 12.gcdlcm(18)
# => [6, 36]
みたいな感じになる。
新しいバージョンで追加されたワケではなく、かなり昔のバージョンから存在していたようだ。

0