結果
問題 |
No.3 ビットすごろく
|
ユーザー |
|
提出日時 | 2020-12-21 18:37:39 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 76 ms / 5,000 ms |
コード長 | 435 bytes |
コンパイル時間 | 164 ms |
コンパイル使用メモリ | 82,176 KB |
実行使用メモリ | 71,168 KB |
最終ジャッジ日時 | 2024-07-01 10:01:24 |
合計ジャッジ時間 | 3,288 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 33 |
ソースコード
from collections import deque N = int(input()) hist = [0 for _ in range(N+1)] que = deque([(1,1)]) hist[1]=1 flag = 0 while que: x,d = que.popleft() if x==N: flag = 1 break n = bin(x)[2:].count("1") if x-n>=1 and hist[x-n]==0: hist[x-n]=1 que.append((x-n,d+1)) if x+n<=N and hist[x+n]==0: hist[x+n]=1 que.append((x+n,d+1)) if flag==0: print(-1) else: print(d)