結果
問題 |
No.862 XORでX
|
ユーザー |
![]() |
提出日時 | 2021-04-04 12:56:06 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 126 ms / 2,000 ms |
コード長 | 512 bytes |
コンパイル時間 | 454 ms |
コンパイル使用メモリ | 82,360 KB |
実行使用メモリ | 79,156 KB |
最終ジャッジ日時 | 2024-12-27 08:36:59 |
合計ジャッジ時間 | 5,511 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 28 |
ソースコード
n,x = map(int, input().split()) M = 10**5+6 use = list(range(1,n+1)) use_lst = [0]*M v = 0 for i in range(1,n+1): v ^= i use_lst[i] = 1 free = list(range(n+1,M)) nn = M-n-1 cnt = 0 from random import randrange while v != x: idx = randrange(0,n) y = use[idx] v ^= y if 0 < v^x < M and use_lst[v^x]==0: use[idx] = v^x break jdx = randrange(0,nn) w = free[jdx] v ^= w use_lst[y] = 0 use_lst[w] = 1 use[idx],free[jdx] = w,y for i in use: print(i)