Expected Behavior
Throw an error like this:

Current Behavior
The simulation runs smoothly
Possible Solution
Check simulation data before starting it.
Additionally, in:
func (v *Vehicle) Drive(allTrips []*Trip, step int, bonus int16) (score int) {
// until the vehicle handles all scheduled rides
if v.CurrentTrip >= len(v.Trips) {
return
}
trip := allTrips[v.Trips[v.CurrentTrip]]
trip.SomeoneIsOnIt()
We should check if someone is already on it
Expected Behavior
Throw an error like this:

Current Behavior
The simulation runs smoothly
Possible Solution
Check simulation data before starting it.
Additionally, in:
We should check if someone is already on it