結果
問題 |
No.1665 quotient replace
|
ユーザー |
![]() |
提出日時 | 2025-03-20 19:02:14 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 594 ms / 3,000 ms |
コード長 | 889 bytes |
コンパイル時間 | 252 ms |
コンパイル使用メモリ | 82,468 KB |
実行使用メモリ | 229,592 KB |
最終ジャッジ日時 | 2025-03-20 19:03:06 |
合計ジャッジ時間 | 11,920 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 41 |
ソースコード
import sys def main(): max_num = 10**6 min_prime = [0] * (max_num + 1) primes = [] for i in range(2, max_num + 1): if min_prime[i] == 0: min_prime[i] = i primes.append(i) for p in primes: if p > min_prime[i] or i * p > max_num: break min_prime[i * p] = p data = list(map(int, sys.stdin.read().split())) n = data[0] a = data[1:n+1] xor_sum = 0 for x in a: if x == 1: xor_sum ^= 0 continue s = 0 tmp = x while tmp > 1: p = min_prime[tmp] cnt = 0 while tmp % p == 0: tmp = tmp // p cnt += 1 s += cnt xor_sum ^= s if xor_sum != 0: print("white") else: print("black") if __name__ == "__main__": main()