結果
問題 | No.3 ビットすごろく |
ユーザー |
![]() |
提出日時 | 2014-10-01 01:49:00 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
TLE
|
実行時間 | - |
コード長 | 573 bytes |
コンパイル時間 | 419 ms |
コンパイル使用メモリ | 12,672 KB |
実行使用メモリ | 38,400 KB |
最終ジャッジ日時 | 2024-12-30 06:53:57 |
合計ジャッジ時間 | 78,795 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 22 TLE * 11 |
ソースコード
from collections import deque N = int(input()) def bfs(): v = deque([False] * (N + 1)) q = deque() q.append([1,1]) count = 0 while(q): u = q.popleft() v[u[0]] = True bit1_count = '{:b}'.format(u[0]).count('1') v1 = u[0] + bit1_count v2 = u[0] - bit1_count if u[0] == N: return u[1] if (0 < v1 <= N) and not v[v1]: q.append([v1,u[1] + 1]) if (0 < v2 <= N) and not v[v2]: q.append([v2, u[1] + 1]) return -1 print(bfs())