¿Es Amphibian un Barco o un Coche?
Imagina un mundo donde nuestro transporte no está confinado solo a carreteras o aguas, sino que puede ser ambas cosas. En este entorno innovador, necesitamos un vehículo que pueda funcionar tanto en tierra como en cuerpos de agua.
Para satisfacer esta necesidad, tienes la tarea de diseñar dos clases base: Car
y Boat
, y una clase derivada Amphibian
, que heredará de ambas clases base.

La clase Car
debe tener un método drive(distance)
que, al ser invocado, incrementa la lectura del odómetro del coche en la distancia dada y devuelve la nueva lectura.
La clase Boat
debe tener un método sail(distance)
que, al ser invocado, incrementa la lectura del odómetro del barco en la distancia dada y devuelve la nueva lectura.
La clase Amphibian
debe heredar los métodos drive()
y sail()
, y debe poder invocar ambos. También debe llevar un registro de la distancia total recorrida, ya sea por carretera o por agua.
El método total_distance()
debe devolver la distancia total recorrida por el vehículo anfibio, combinando las distancias cubiertas en tierra y agua.
Entrada | Salida |
---|---|
| 100 |
Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB