結果

問題 No.3 ビットすごろく
ユーザー seiichi
提出日時 2020-11-19 16:55:51
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
WA  
実行時間 -
コード長 950 bytes
コンパイル時間 99 ms
コンパイル使用メモリ 12,672 KB
実行使用メモリ 11,904 KB
最終ジャッジ日時 2024-07-23 10:07:44
合計ジャッジ時間 2,438 ms
ジャッジサーバーID
(参考情報)
judge3 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other WA * 33
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

from collections import deque
N = int(input())
queue = deque([{"count":1, "position":1}])
passed_position = {1}
result = -1
while queue:
q = queue.popleft()
print(q)
current_position = q["position"]
current_count = q["count"]
if current_position == N:
result = current_count
break
if current_position < N:
steps = bin(current_position).count("1")
forward_position = current_position + steps
backward_position = current_position - steps
if forward_position not in passed_position and 1 < forward_position <= N:
passed_position.add(forward_position)
queue.append({"count":current_count+1, "position":forward_position})
if backward_position not in passed_position and 1 < backward_position <= N:
passed_position.add(backward_position)
queue.append({"count":current_count+1, "position":backward_position})
print(result)
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0