結果
問題 |
No.1717 Levi-Civita Triangle
|
ユーザー |
|
提出日時 | 2021-08-04 21:04:52 |
言語 | PyPy3 (7.3.15) |
結果 |
TLE
|
実行時間 | - |
コード長 | 858 bytes |
コンパイル時間 | 160 ms |
コンパイル使用メモリ | 82,212 KB |
実行使用メモリ | 101,604 KB |
最終ジャッジ日時 | 2024-09-23 03:44:27 |
合計ジャッジ時間 | 4,989 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 4 TLE * 1 -- * 37 |
ソースコード
# 高速化愚直解 想定 TLE import sys input = sys.stdin.buffer.readline N = int(input()) As = list(map(int, input().split())) bit_0 = int(''.join([str(int(e == 0)) for e in As]), 2) bit_1 = int(''.join([str(int(e == 1)) for e in As]), 2) bit_2 = int(''.join([str(int(e == 2)) for e in As]), 2) for i in range(N): l = 2 * (N - i) - 1 new_bit_1 = 0 new_bit_1 |= bit_0 & (bit_2 >> 1) & (bit_1 >> 2) new_bit_1 |= bit_2 & (bit_1 >> 1) & (bit_0 >> 2) new_bit_1 |= bit_1 & (bit_0 >> 1) & (bit_2 >> 2) new_bit_2 = 0 new_bit_2 |= bit_0 & (bit_1 >> 1) & (bit_2 >> 2) new_bit_2 |= bit_1 & (bit_2 >> 1) & (bit_0 >> 2) new_bit_2 |= bit_2 & (bit_0 >> 1) & (bit_1 >> 2) bit_1 = new_bit_1 bit_2 = new_bit_2 bit_0 = int('1' * l, 2) ^ bit_1 ^ bit_2 if bit_1: print(1) elif bit_2: print(2) else: print(0)