3
self, startAt: int, moveCost: int, pushCost: int, targetSeconds: int6
(targetSeconds // 60, targetSeconds % 60)7
] # store possibilities as (minutes, seconds)9
if poss[0][0] > 99: # for when targetSeconds >= 600010
poss = [(99, poss[0][1] + 60)]12
if poss[0][0] >= 1 and (poss[0][1] + 60) <= 99:13
# adding a second possibility e.g. (01, 16) -> (0, 76)14
poss.append((poss[0][0] - 1, poss[0][1] + 60))23
if i[0] != 0: # 0s are prepended, so no need to push 0s25
if int(j) != curr_start:32
len(seconds) == 1 and i[0] != 033
): # seconds is a single digit, prepend a "0" to it34
seconds = "0" + seconds37
if int(j) != curr_start:41
costs.append(curr_cost)