Magnetic Force Between Two Balls LeetCode solution in Python
1class Solution:2def possible(self, distance, positions, M):3ball = 14lastPos = positions[0]5for pos in positions:6if pos - lastPos >= distance:7ball += 18if ball == M:9return True10lastPos = pos1112return False1314def maxDistance(self, positions, M):15positions.sort()16low = 017high = positions[-1]18ans = 019while low <= high:20distance = low + (high - low) // 22122if self.possible(distance, positions, M):23ans = distance24low = distance + 125else:26high = distance - 127return ans