We have a lot of rides in new york for tomorrow, and we have a lot drivers in new york. We need to do a backend algorithm to figure out which ride to give to which driver so that there is no conflict, e.g., we don't give the 2 different rides at 9 AM to the same driver we want to give the ride a lower priced driver if possible. if we give a ride to pick up a passenger from New York time square and drop off the passenger at JFK airport to a driver, the next ride we give to the same driver should preferably pick up from JFK airport, this way, the driver doesn't have to drive a lot without a paying passenger on the car. You may assume as input a collection of rides. Each ride consists of pickup time, pickup location (latitude/longitude), pickup address, drop off location/address and estimated ride duration.