1# Runtime: 95 ms (Top 46.38%) | Memory: 14.3 MB (Top 75.93%)2class Solution:3def racecar(self, target: int) -> int:4q = [(0, 1)]5steps = 067while q:8num = len(q)9for i in range(num):10pos, speed = q.pop(0)11if pos == target:12return steps13q.append((pos + speed, speed * 2))14rev_speed = -1 if speed > 0 else 115if (16(pos + speed) < target17and speed < 018or (pos + speed) > target19and speed > 020):21q.append((pos, rev_speed))22steps += 1