結果
問題 |
No.3 ビットすごろく
|
ユーザー |
![]() |
提出日時 | 2019-10-28 18:56:52 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 435 bytes |
コンパイル時間 | 345 ms |
コンパイル使用メモリ | 82,152 KB |
実行使用メモリ | 52,560 KB |
最終ジャッジ日時 | 2024-09-14 21:16:01 |
合計ジャッジ時間 | 7,130 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 2 WA * 1 TLE * 1 -- * 29 |
ソースコード
N = int(input()) dp = [float('inf')] * (N + 1) dp[1] = 1 stack = [1] while stack: n = stack.pop() move = bin(n)[2:].count('1') if n + move <= N: if dp[n] + 1 <= dp[n + move]: dp[n + move] = dp[n] + 1 stack.append(n + move) if n - move > 0: if dp[n] + 1 <= dp[n - move]: dp[n - move] = dp[n] + 1 stack.append(n - move) print(dp[N] if dp[N] else - 1)