Ամֆիբիան նավա՞կ է, թե՞ մեքենա
Պատկերացրեք մի աշխարհ, որտեղ փոխադրամիջոցները սահմանափակված չեն ճանապարհներով կամ ջրերով։ Փոխարենը, ունենք տրանսպորտ, որը մեզ փոխադրում է մի տեղից մյուսը թե՛ ցամաքով, թե՛ ջրով: Այս նորարարական միջավայրում մեզ անհրաժեշտ է տրանսպորտային սարք, որը կարող է գործել ինչպես ճանապարհների վրա, այնպես էլ ջրում:
Այս նպատակին հասնելու համար ձեզ հանձնարարել են ստեղծել երկու հիմնական կլասներ՝
Car
and Boat
, և ժառանգ կլաս՝ Amphibian
, որը ժառանգելու է երկու հիմնական կլասներից:
Car
կլասը պետք է ունենա մեթոդ՝ drive (distance)
, որը կանչվելու ժամանակ ավելացնում է մեքենայի վազաչափի ցուցանիշը տրված հեռավորությամբ և վերադարձնում է նոր ցուցանիշը:Boat
կլասը պետք է ունենա մեթոդ՝ sail(distance)
, որը կանչվելու ժամանակ մեծացնում է նավի վազաչափի ցուցանիշը տրված հեռավորությամբ և վերադարձնում է նոր ցուցանիշը:Amphibian
կլասը պետք է ժառանգի drive()
և sail()
մեթոդները և պետք է կարողանա կանչել երկուսն էլ: Այն նաև պետք է հետևի անցած ընդհանուր տարածությանը՝ լինի այն ճանապարհով, թե ջրով:total_distance()
մեթոդը պետք է վերադարձնի փոխադրամիջոցի անցած ընդհանուր տարածությունը՝ հաշվելով թե՛ ցամաքով, թե՛ ջրի վրայով անցած տարածությունները:Մուտք | Ելք |
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