結果

問題 No.2061 XOR Sort
ユーザー gr1msl3y
提出日時 2022-09-03 16:43:22
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 441 bytes
コンパイル時間 387 ms
コンパイル使用メモリ 82,048 KB
実行使用メモリ 103,012 KB
最終ジャッジ日時 2024-11-17 06:51:09
合計ジャッジ時間 6,030 ms
ジャッジサーバーID
(参考情報)
judge2 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 2 WA * 39
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

import sys
sys.setrecursionlimit(10**7)
N = int(input())
A = list(map(int, input().split()))
MOD = 998244353
A.sort()
def solve(l, r, d):
if A[l] == A[r] or d < 0:
return 1
if (A[l] >> d) & 1 == (A[r] >> d) & 1:
return solve(l, r, d-1)
for ind in range(l, r+1):
if (A[ind] >> d) & 1:
v = solve(l, ind-1, d-1)*solve(ind, r, d-1) % MOD
return 2*v % MOD
print(solve(0, N-1, 29))
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0