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 |
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