paiza オンラインハッカソン vol.4 をやってみた

またまた挑戦してみました(ヒマ人^^;)。使用言語は Ruby です。画像クリックで詳細が出ます。
 

ミッション1

20171026103404
こりゃ簡単すぎるだろう。

コード。

data = []
gets.to_i.times {data << gets.to_i}

puts data.inject(&:+)

 

ミッション2

20171026103849
これも超簡単。

コード。

data = []
gets.to_i.times {data << gets.split.map(&:to_i)}

result = 0
data.each do |d|
  a = d[0] - d[1]
  result += a * d[2] if a > 0
end
puts result

 

ミッション3

20171026104200
簡単なのだけれど、たぶんもっといいアルゴリズムがあるでしょう。自分のコードに不満。

コード。

len, koma_size = gets.split.map(&:to_i)
koma = []
koma_size.times {koma << gets.to_i}

max = point = koma[0, len].inject(&:+)
(koma_size - len).times do |i|
  point = point - koma[i] + koma[i + len]
  max = point if point > max
end
puts max

コメントで60点とか言っている人は、ループを二重にしているのだと思う。
 
全体的にこれまでの paiza オンラインハッカソンに比べて極端に簡単。これでは差がつかないのではないか。