Compute shortest path to collect all keys | Airbnb Interview Question