結果
問題 | No.814 ジジ抜き |
ユーザー | 37zigen |
提出日時 | 2018-02-21 07:26:57 |
言語 | Java21 (openjdk 21) |
結果 |
AC
|
実行時間 | 1,307 ms / 3,000 ms |
コード長 | 868 bytes |
コンパイル時間 | 2,505 ms |
コンパイル使用メモリ | 77,832 KB |
実行使用メモリ | 56,880 KB |
最終ジャッジ日時 | 2024-09-14 08:10:30 |
合計ジャッジ時間 | 29,996 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge6 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 131 ms
41,304 KB |
testcase_01 | AC | 130 ms
41,492 KB |
testcase_02 | AC | 132 ms
41,248 KB |
testcase_03 | AC | 225 ms
45,944 KB |
testcase_04 | AC | 1,168 ms
55,000 KB |
testcase_05 | AC | 1,094 ms
55,572 KB |
testcase_06 | AC | 1,307 ms
54,672 KB |
testcase_07 | AC | 929 ms
56,092 KB |
testcase_08 | AC | 1,268 ms
54,904 KB |
testcase_09 | AC | 1,238 ms
56,720 KB |
testcase_10 | AC | 1,298 ms
56,880 KB |
testcase_11 | AC | 1,246 ms
55,208 KB |
testcase_12 | AC | 851 ms
55,716 KB |
testcase_13 | AC | 1,100 ms
55,036 KB |
testcase_14 | AC | 1,182 ms
54,944 KB |
testcase_15 | AC | 979 ms
56,816 KB |
testcase_16 | AC | 938 ms
55,160 KB |
testcase_17 | AC | 1,126 ms
55,548 KB |
testcase_18 | AC | 1,221 ms
56,672 KB |
testcase_19 | AC | 1,018 ms
55,244 KB |
testcase_20 | AC | 1,060 ms
55,692 KB |
testcase_21 | AC | 1,095 ms
55,500 KB |
testcase_22 | AC | 1,223 ms
56,848 KB |
testcase_23 | AC | 914 ms
55,004 KB |
testcase_24 | AC | 1,190 ms
56,736 KB |
testcase_25 | AC | 1,147 ms
55,116 KB |
ソースコード
import java.util.Arrays; import java.util.Scanner; public class Main { public static void main(String[] args) { new Main().run(); } public void run() { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); if (!(1 <= N && N <= 3 * 100000)) throw new AssertionError(); long x = 0; for (int i = 0; i < N; ++i) { long K = Long.parseLong(sc.next()); long L = Long.parseLong(sc.next()); long D = Long.parseLong(sc.next()); if (!(K >= 1) || !(0 <= D && D <= 59) || !(0 <= L && L + (K - 1) * (1L << D) <= 1e18)) throw new AssertionError(); x ^= K % 2 * (L & ((1L << D) - 1)); L >>= D; for (long j = L; j <= L + K - 1; ++j) { if (j % 4 == 0) { j = (L + K - 1) / 4 * 4; } x ^= j << D; } } System.out.println(x); } void tr(Object... objects) { System.out.println(Arrays.deepToString(objects)); } }