結果
問題 |
No.1576 織姫と彦星
|
ユーザー |
|
提出日時 | 2022-02-23 01:30:14 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 55 ms / 2,000 ms |
コード長 | 483 bytes |
コンパイル時間 | 269 ms |
コンパイル使用メモリ | 82,432 KB |
実行使用メモリ | 67,792 KB |
最終ジャッジ日時 | 2024-07-01 00:59:23 |
合計ジャッジ時間 | 4,841 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 5 |
other | AC * 54 |
ソースコード
from collections import deque, defaultdict n = int(input()) start, end = map(int, input().split()) a = list(map(int, input().split())) set_a = set() for i in a: set_a.add(i) d = defaultdict(int) d[start] = 0 for i in a: d[i] = -1 d[end] = -1 q = deque([start]) while q: v = q.popleft() for i in range(30): num = v ^ 2 ** i if d[num] != -1: continue d[num] = d[v] + 1 q.append(num) print(d[end] - 1) if d[end] != -1 else print(-1)