0
0

More than 3 years have passed since last update.

覚えたことはすぐに使いたくなる習性を活かして三項演算子・重複の削除使ってみた

Posted at

はじめに

こんにちは、本日もAtCoderの解答を書き残して行こうと思います。

本日は、先日勉強していた時に出てきた解答うまく使って解けたので、
そちらを紹介して参ります。

どんな問題を解いたか

私が今回解いた問題は、
0~9までの数字が3つ与えられ、それらのうち2つが同じであるかいなか」を求める問題でした。

私の解答

早速ですが、私の解答は以下のようになりました。

sample.rb
a,b,c = gets.split(' ').map(&:to_i)
puts [a,b,c].uniq.size == 2 ? 'Yes' : 'No'

こだわりポイントとしては、
1.a,b,cを[]で囲うことで配列にしているところ
2.a,b,cの重複をuniqで確認しているところ
3.三項演算子を使って出力文字を制御しているところ
です。

1に関しては、別に分けなくても1つの配列にしてしまえばよかった気もしますが、
問題に乗っ取って再現しました。

また、普段は結構if文で条件分岐して書いてしまいますが、
今回は三項演算子ですっきり書くことができました。

他の人の解答をみていても、方向性はだいたい合っていたので、
結構嬉しかったです!

A問題なので、簡単ではありますが、
解けたことよりも、書き方がそれらしくなったかな?というところに
喜びを覚えてます。

これからも綺麗でスッキリしたコーディングを追求していきたいところです。
それでは、また。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0