1時間以内に解けなければプログラマ失格となってしまう5つの問題が話題に を解いてみた。 一応1時間以内にできたけど、あまり綺麗ではない。 問題1〜3は簡単なので省略。 問題4 正の整数のリストを与えられたとき、数を並び替えて可能な最大数を返す関数を記述せよ。 例えば、[50, 2, 1, 9]が与えられた時、95021が答えとなる #!/usr/bin/env ruby def max_combination(ar) ar.sort { |x, y| "#{y}#{x}" <=> "#{x}#{y}" } end ar = [50, 2, 1, 9] max_combination(ar).join # => "95021" 一瞬戸惑ったけど、配列の要素を文字列比較すればok。 問題5 1,2,…,9の数をこの順序で、”+”、”-“、またはななにもせず結果が100となる あらゆる組合せを出