結果
問題 |
No.146 試験監督(1)
|
ユーザー |
![]() |
提出日時 | 2016-01-03 17:48:33 |
言語 | Java (openjdk 23) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,014 bytes |
コンパイル時間 | 2,035 ms |
コンパイル使用メモリ | 78,400 KB |
実行使用メモリ | 61,288 KB |
最終ジャッジ日時 | 2024-09-19 10:52:09 |
合計ジャッジ時間 | 5,394 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | WA * 3 |
ソースコード
import java.io.*; import java.util.*; import java.math.*; class Main { public static void out (Object o) { System.out.println(o); } public static BigDecimal opt (String s) { long l = Long.valueOf(s); int i = s.charAt(s.length() - 1) - '0'; if (i % 2 == 0) { l = l >>> 1; } else { l = (l >>> 1) + 1; } return new BigDecimal(l % 10000000000L); } public static void main (String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.parseInt(br.readLine()); BigDecimal ans = BigDecimal.ZERO; BigDecimal two = BigDecimal.valueOf(2); BigDecimal m = BigDecimal.valueOf(1000000007); for (int i = 0; i < n; i++) { String[] line = br.readLine().split(" "); int len = line[1].length(); line[1] = len > 10 ? line[1].substring(len - 10 , len) : line[1]; BigDecimal c = opt(line[0]); BigDecimal d = new BigDecimal(line[1]); ans = ans.add(c.multiply(d)).remainder(m); } out(ans); } }