AtCoder ABC178 A問題・B問題

Ruby でハッシュを使う練習問題を探しているけどなかなか見つからないので、9月13日に開催された AtCoder Beginner Contest 178(ハッシュと関係ない)。

各問題の制約や入力・出力例はリンク先(AtCoderのサイト)へ。

A - Not

問題文
0 以上 1 以下の整数 x が与えられます。x が 0 なら 1 を、1 なら 0 を出力してください。

入力
入力は以下の形式で標準入力から与えられる。
x

A - Not

提出したコード

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

B - Product Max

提出したコード

a, b, c, d = gets.split.map(&:to_i)
p [a * c, a * d, b * c, b * d].max

結果:AC(正解) 実行時間:73 ms

愚直にやった。同じような回答の人も多そうだった。

ハッシュはとりあえずリファレンスマニュアルとかチェリー本を読み直そうかな。