結果
問題 |
No.3 ビットすごろく
|
ユーザー |
|
提出日時 | 2022-01-09 22:04:27 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 55 ms / 5,000 ms |
コード長 | 525 bytes |
コンパイル時間 | 330 ms |
コンパイル使用メモリ | 82,268 KB |
実行使用メモリ | 66,348 KB |
最終ジャッジ日時 | 2024-11-14 10:34:11 |
合計ジャッジ時間 | 2,965 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 33 |
ソースコード
from collections import deque n = int(input()) Que = deque([(1, 1)]) seen = set([1]) ans = -1 while Que: curr, cnt = Que.popleft() if curr == n: ans = cnt break cc = curr res = 0 while cc != 0: res += cc % 2 cc //= 2 if curr - res >= 1 and curr - res not in seen: seen.add(curr - res) Que.append((curr - res, cnt + 1)) if curr + res <= n and curr + res not in seen: seen.add(curr + res) Que.append((curr + res, cnt + 1)) print(ans)