結果
問題 |
No.81 すべて足すだけの簡単なお仕事です。
|
ユーザー |
|
提出日時 | 2014-11-28 16:59:03 |
言語 | Java (openjdk 23) |
結果 |
WA
|
実行時間 | - |
コード長 | 988 bytes |
コンパイル時間 | 3,752 ms |
コンパイル使用メモリ | 83,088 KB |
実行使用メモリ | 56,400 KB |
最終ジャッジ日時 | 2025-01-03 10:16:56 |
合計ジャッジ時間 | 8,733 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 16 WA * 14 |
ソースコード
import java.text.NumberFormat; import java.util.Scanner; public class Main81 { public static void main(String[] args) { Main81 p = new Main81(); } public Main81() { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); String[] a = new String[n]; for(int i=0;i<n;i++) a[i] = sc.next(); solve(a); } private final int NUM_DIGITS = 10; public void solve(String[] a) { long in = 0; long fr = 0; NumberFormat nf = NumberFormat.getInstance(); nf.setMinimumFractionDigits(NUM_DIGITS); for(int j=0;j<a.length;j++){ String[] s = (a[j]+".0").split("\\."); long l = Long.parseLong(s[0]); long f = Long.parseLong(nf.format(Double.parseDouble("0."+s[1])).substring(2)); in += l; fr = fr + f * (s[0].charAt(0) == '-' ? (-1) : 1) ; } in -= 1.0e3; fr += 1.0e13; in += (long)(fr/1.0e10); fr %= 1.0e10; System.out.println(String.format("%d.%010d", in ,Math.abs(fr))); } }