結果

問題 No.81 すべて足すだけの簡単なお仕事です。
ユーザー siman
提出日時 2021-07-29 08:23:29
言語 Ruby
(3.4.1)
結果
AC  
実行時間 83 ms / 5,000 ms
コード長 462 bytes
コンパイル時間 69 ms
コンパイル使用メモリ 7,424 KB
実行使用メモリ 12,416 KB
最終ジャッジ日時 2024-07-22 16:57:02
合計ジャッジ時間 3,203 ms
ジャッジサーバーID
(参考情報)
judge3 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 30
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

N = gets.to_i
A = N.times.map { gets.chomp }
g = 10 ** 10
sum = 0

A.each do |a|
  i, f = a.split('.')
  f = '0' if f.nil?

  v = i.to_i.abs * g + f.ljust(10, '0').to_i

  if a[0] == '-'
    v *= -1
  end

  sum += v
end

l = 10 - sum.abs.to_s.size

if sum == 0
  puts "0.0000000000"
elsif -1.0 * g < sum && sum < 0
  puts "-0." + ('0' * l) + sum.abs.to_s
elsif 0 < sum && sum < g
  puts "0." + ('0' * l) + sum.abs.to_s
else
  puts sum.to_s.insert(-11, '.')
end
0