結果

問題 No.81 すべて足すだけの簡単なお仕事です。
ユーザー 6soukiti29
提出日時 2019-07-18 23:58:58
言語 Nim
(2.2.0)
結果
AC  
実行時間 2 ms / 5,000 ms
コード長 1,009 bytes
コンパイル時間 3,463 ms
コンパイル使用メモリ 66,124 KB
実行使用メモリ 6,944 KB
最終ジャッジ日時 2024-07-22 16:46:48
合計ジャッジ時間 4,448 ms
ジャッジサーバーID
(参考情報)
judge5 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 30
権限があれば一括ダウンロードができます
コンパイルメッセージ
/home/judge/data/code/Main.nim(1, 8) Warning: imported and not used: 'sequtils' [UnusedImport]

ソースコード

diff #

import sequtils,strutils

var
    a : int64
    b : int64
    N = stdin.readline.parseInt
for i in 1..N:
    var s = stdin.readline
    var t : int64
    var u : int64
    var s2 : string = ""
    var p : int64 = 1
    for j,k in s:
        if k == '-':
            p *= -1
            continue
        if k == '.':
            s2 = s[(j + 1) .. s.high]
            break
        t *= 10
        t += ord(k) - ord('0')
    for j in 0..9:
        if s2.high < j:
            u *= 10
        else:
            u *= 10
            u += ord(s2[j]) - ord('0')
    a += t * p
    b += u * p
    
a += b div 1_000_000_000_0
b = b mod 1_000_000_000_0
if b > 0 and a < 0:
    b -= 1_000_000_000_0
    a += 1
if b < 0 and a > 0:
    b += 1_000_000_000_0
    a -= 1
elif b < 0 and a < 0:
    b *= -1
elif b < 0 and a == 0:
    b *= -1
    var bs = $b
    while bs.len < 10:
        bs = '0' & bs
    echo "-0.",bs
    quit()
    
var bs = $b
while bs.len < 10:
    bs = '0' & bs
echo a,".",bs
            
        

    
0