Ամֆիբիան նավա՞կ է, թե՞ մեքենա
Պատկերացրեք մի աշխարհ, որտեղ փոխադրամիջոցները սահմանափակված չեն ճանապարհներով կամ ջրերով։ Փոխարենը, ունենք տրանսպորտ, որը մեզ փոխադրում է մի տեղից մյուսը թե՛ ցամաքով, թե՛ ջրով: Այս նորարարական միջավայրում մեզ անհրաժեշտ է տրանսպորտային սարք, որը կարող է գործել ինչպես ճանապարհների վրա, այնպես էլ ջրում:
Այս նպատակին հասնելու համար ձեզ հանձնարարել են ստեղծել երկու հիմնական կլասներ՝
Car
and Boat
, և ժառանգ կլաս՝ Amphibian
, որը ժառանգելու է երկու հիմնական կլասներից:![notion image](https://www.notion.so/image/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2F2622fd22-4aa6-4ec7-ab99-a71692d4ea04%2Famphibian.jpg?table=block&id=d2857285-0086-46d2-9318-7040a9a82179&cache=v2)
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