結果

問題 No.3 ビットすごろく
コンテスト
ユーザー こる
提出日時 2017-01-04 11:42:50
言語 Python3
(3.14.3 + numpy 2.4.4 + scipy 1.17.1)
コンパイル:
python3 -mpy_compile _filename_
実行:
python3 _filename_
結果
WA  
実行時間 -
コード長 542 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 395 ms
コンパイル使用メモリ 20,828 KB
実行使用メモリ 21,176 KB
最終ジャッジ日時 2026-05-26 14:46:45
合計ジャッジ時間 8,466 ms
ジャッジサーバーID
(参考情報)
judge2_0 / judge3_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 15 WA * 3 RE * 15
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

import math

n=int(input())
dp=[False]*(n+1)
table=[-1]*(n+1)
def fun(index):
    root=index

    if index==n:
        return 0

    if index<=0 or n<index:
        return math.inf

    if dp[root]:
        return math.inf

    if table[root]!=-1:
        return table[root]

    count=0
    while(index>0):
        if index&1:
            count+=1
        index=index>>1
    dp[root]=True
    ret=min(1+fun(root+count),1+fun(root-count))
    dp[root]=False
    table[root]=ret
    return ret

sum=fun(1)+1
print(-1 if sum==math.inf else sum)
0