もっときれいな書き方ある気しかしません。
解決したいこと
標準入力で文字列を受け取り、受け取った文字列のインデックスを偶数、奇数に分けて出力します。
例) 入力:abcde 出力結果:ace bd
str[0] = a, str[1] = b, str[2] = c, str[3] = d, str[4] = e
偶数と奇数はスペースで分かれています。
最初に数値numを受け取り、その回数分文字列を受け取ります。
テストケースをパス出来てはいますが、もっときれいな書き方がある気しかしないのでアドバイス頂けると嬉しいです。
該当するソースコード
num = gets.chomp.to_i
input = []
num.times do
input << gets.chomp
end
input.each do |str|
odd = []
even = []
for i in 0..(str.length - 1) do
if i % 2 == 0
even << str[i]
elsif i % 2 == 1
odd << str[i]
end
end
for i in 0..(even.length - 1) do
print even[i]
end
print " "
for i in 0..(odd.length - 1) do
if i == odd.length - 1
puts odd[i]
else
print odd[i]
end
end
end
かなり無理矢理でイケてないので、処理を1つにできないかと模索中です。
お力添え頂けると嬉しいです。