結果
問題 | No.3 ビットすごろく |
ユーザー |
|
提出日時 | 2022-12-05 11:08:10 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
RE
|
実行時間 | - |
コード長 | 543 bytes |
コンパイル時間 | 88 ms |
コンパイル使用メモリ | 12,672 KB |
実行使用メモリ | 72,608 KB |
最終ジャッジ日時 | 2024-10-12 09:04:36 |
合計ジャッジ時間 | 6,762 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 1 RE * 2 TLE * 1 -- * 29 |
ソースコード
N = int(input()) import math from collections import deque def bfs(N): l=[0]*(N+1) l[1]=1 q=deque() q.append(1) while(q): u=q.popleft() if u==N: return l[u] bit1_count = '{:b}'.format(u).count('1') val1 = u-bit1_count val2 = u+bit1_count if (0<val1<N+1) or (l[val1]==0): q.append(val1) l[val1] = l[u]+1 if (0<val2<N+1) or (l[val2]==0): q.append(val2) l[val2] = l[u]+1 return -1 print(bfs(N))