Write Go code where two goroutines play ping pong, each holding the ball for a random few seconds; after a timeout the goroutine holding the ball wins.
Asked in the round 1 stage. Implement the equivalent behavior as ping_pong_winner(timeout, hold_times, seed), using deterministic hold_times when provided and seeded random durations afterward. Player 0 starts with the ball. Return 0 or 1, the player holding the ball when the timeout expires. A handoff exactly at the deadline is completed before determining the winner.
def ping_pong_winner(timeout, hold_times, seed):