Ruby でハッシュを使う練習問題を探しているけどなかなか見つからないので、9月13日に開催された AtCoder Beginner Contest 178(ハッシュと関係ない)。
各問題の制約や入力・出力例はリンク先(AtCoderのサイト)へ。
A - Not
問題文
0 以上 1 以下の整数 x が与えられます。x が 0 なら 1 を、1 なら 0 を出力してください。入力
入力は以下の形式で標準入力から与えられる。
x
提出したコード
n = gets.to_i puts n == 1 ? 0 : 1
結果:AC(正解) 実行時間:82 ms
自分と同じような回答が多そうだったが、2行目が puts 1 - n
というコードもあって、なるほど!という感じ。
puts n.zero? 1 : 0
も読みやすくてよさそう。
B - Product Max
問題文
整数 a, b, c, d が与えられます。 a ≤ x ≤ b, c ≤ y ≤ d を満たす整数 x, y について、x × y の最大値はいくつですか。入力
入力は以下の形式で標準入力から与えられる。
a b c d
提出したコード
a, b, c, d = gets.split.map(&:to_i)
p [a * c, a * d, b * c, b * d].max
結果:AC(正解) 実行時間:73 ms
愚直にやった。同じような回答の人も多そうだった。
ハッシュはとりあえずリファレンスマニュアルとかチェリー本を読み直そうかな。