結果
問題 |
No.130 XOR Minimax
|
ユーザー |
![]() |
提出日時 | 2020-01-21 11:54:56 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
RE
|
実行時間 | - |
コード長 | 548 bytes |
コンパイル時間 | 228 ms |
コンパイル使用メモリ | 12,544 KB |
実行使用メモリ | 28,888 KB |
最終ジャッジ日時 | 2024-07-05 05:53:58 |
合計ジャッジ時間 | 3,534 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 2 RE * 19 |
ソースコード
import sys sys.setrecursionlimit(10 ** 6) def II(): return int(sys.stdin.readline()) def LI(): return list(map(int, sys.stdin.readline().split())) def main(): def dfs(aa, d=31): an=len(aa) if an == 1: return 0 for i, a in enumerate(aa): if a >> d & 1: break else: i = an if i == 0 or i == an: return dfs(aa[:], d - 1) return 1 << d + min(dfs(aa[:i], d - 1), dfs(aa[i:], d - 1)) n = II() aa = LI() aa = list(set(aa)) aa.sort() print(dfs(aa)) main()