はじめに
RubyでAtCoderを解いていたときに、便利なメソッドを見つけたので記事にしておきます。
よろしくお願いします。
digitsメソッド
digitsメソッドはinteger型に用意されているメソッドで、桁ごとの数字を一つずつ配列の中に入れてくれるメソッドです。正の整数に使うことができます。
例えば、1234という数字があったとします。これにdigitsメソッドを使うと↓
1234.digits
=> [4, 3, 2, 1]
174893.digits
=> [3, 9, 8, 4, 7, 1]
また、digitsに引数を渡すことができます。引数を渡した数字を基数として、その記数法で表記した数値を配列に一つずつ入れます。
つまり引数を渡さなかった場合(上記の例)、基数は10となっています。
引数を渡した場合
16.digits(16)
=> [0, 1]
3.digits(2)
=> [1, 1]
この辺は進数の理解が必要ありますね。