Ist Amphibian ein Boot oder ein Auto?
Stellen Sie sich eine Welt vor, in der unsere Fortbewegungsmittel nicht nur auf Straßen oder Gewässer beschränkt sind, sondern beides können. In diesem innovativen Szenario benötigen wir ein Transportmittel, das sowohl auf Straßen als auch auf Wasserwegen funktioniert.
Um diesen Bedarf zu erfüllen, sollen Sie zwei Basisklassen namens Car
und Boat
entwerfen sowie eine abgeleitete Klasse Amphibian
, die von beiden Basisklassen erbt.

Die Klasse Car
sollte eine Methode drive(distance)
haben. Bei Aufruf erhöht diese Methode den Kilometerstand des Autos um die angegebene Distanz und gibt den neuen Wert zurück.
Die Klasse Boat
sollte eine Methode sail(distance)
besitzen. Bei Aufruf erhöht diese den Kilometerstand des Bootes um die gegebene Strecke und gibt den neuen Wert zurück.
Die Klasse Amphibian
sollte die Methoden drive()
und sail()
erben und beide verwenden können. Sie sollte außerdem den gesamten zurückgelegten Weg verfolgen, unabhängig davon, ob er zu Land oder zu Wasser erfolgt ist.
Die Methode total_distance()
sollte die insgesamt vom Amphibienfahrzeug zurückgelegte Distanz zurückgeben, indem sie die auf der Straße und auf dem Wasser zurückgelegten Strecken summiert.
Eingabe | Ausgabe |
---|---|
| 100 |
Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB