結果

問題 No.1228 I hate XOR Matching
ユーザー tyawanmusityawanmusi
提出日時 2020-07-24 00:01:45
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
WA  
実行時間 -
コード長 610 bytes
コンパイル時間 269 ms
コンパイル使用メモリ 12,800 KB
実行使用メモリ 11,008 KB
最終ジャッジ日時 2024-06-25 13:46:08
合計ジャッジ時間 10,841 ms
ジャッジサーバーID
(参考情報)
judge4 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 13 WA * 18
権限があれば一括ダウンロードができます

ソースコード

diff #

k,x=map(int,input().split())
if x==0:
  print("Yes")
  print(1)
  if k==0:print(1)
  else:print(0)
  exit()
if k==0:x+=1
if 2**(x.bit_length()-1)!=x:exit(print("No"))
x=x.bit_length()-1
ans=[0]
x-=1
bitt=[0]*20
bitt[(x&-x).bit_length()-2]=-1
for i in range(20):
  if x>=4:
    if bitt[i]>=0 and bitt[i+1]>=0:
      bitt[i]=bitt[i+1]=2
      x-=4
  elif x:
    if bitt[i]==0:
      bitt[i]=1
      x-=1
if bitt[0]>0:ans+=[1,1]
for i in range(1,20):
  if bitt[i]>0:ans+=[2**i,2**i]
  if bitt[i-1]==bitt[i]==2:
    ans+=[2**i+2**(i-1),2**i+2**(i-1)]
if k!=0:ans.append(k)
print("Yes")
print(len(ans))
print(*ans)
0