結果
問題 | No.3 ビットすごろく |
ユーザー |
|
提出日時 | 2020-06-10 19:22:35 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
WA
|
実行時間 | - |
コード長 | 862 bytes |
コンパイル時間 | 238 ms |
コンパイル使用メモリ | 12,544 KB |
実行使用メモリ | 10,880 KB |
最終ジャッジ日時 | 2024-06-23 13:09:41 |
合計ジャッジ時間 | 5,303 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 12 WA * 21 |
ソースコード
inp = int(input())def bitJusawi(goal):move = lambda x: list(map(int, list(bin(x)[2:]))).count(1)his = [] ; loc = 0; ops = 0; rem = goal - locwhile goal != loc:his.append(loc)rem = goal - locif ops == 0:ops = 1; loc = 1else:ops += 1rng = move(loc)if rem >= rng:loc += rngelse:bounce = goal - ((loc + rng) - goal)if loc - rng < bounce:loc = bounceelse:loc -= rngcond = []for i in range(2,goal//2+1,2):if ops >= i:h = i // 2cond.append(loc == his[-h] == his[-i])stuck = any(cond)if stuck:return -1return opsprint(bitJusawi(inp))