¿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 |
amphibian=Amphibian(); print(amphibian.drive(100)); print(amphibian.sail(200)); print(amphibian.total_distance()) | 100
300
300 |
Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB