04. Автобус
Автобус кара по маршрут София - Бургас. При тръгването си в автобуса има определен брой пътници. На всяка спирка се качват и слизат определен брой пътници. Броят на спирките се въвежда от конзолата. Също така, на всеки нечетен брой спирки се качват по двама проверяващи и слизат на четните спирки.
Напишете програма, която изчислява колко пътника ще има в автобуса когато стигне в Бургас.
Вход
Входът се чете от конзолата и съдържа:
- На първия ред - броят пътници в автобуса при потеглянето му - цяло число в интервала [1 ... 100]
- На втория ред - броят на спирките - цяло число в интервала [1…50]
- На следващите редове (равни на броят на спирките * 2) - броя на пътниците, които слизат и броя на пътниците които се качват - цели числа в интервала [0…100]
Изход
Да се отпечата на конзолата 1 ред :
"The final number of passengers is : {брой пътници при пристигането}"
Примерен вход и изход
Вход |
Изход |
Обяснения |
|
20 2 10 5 5 3
|
The final number of passengers is : 13 |
Имаме 20 пътника в автобуса и 2 спирки. 1-ва спирка: 10 слизат, 5 се качват + 2 проверяващи (защото 1 е нечетно число)= 20 -10 + 5 +2 =17 2-ра спирка: 5 слизат + 2-мата проверяващи (защото 2 е четно) 17- 5 -2= 10 пътника остават. трима се качват , 10+3 =13 Общо: 13 пътника |
|
Вход |
Изход |
Вход |
Изход |
25 5 14 15 9 11 10 13 6 7 10 8 |
The final number of passengers is : 32 |
17 3 6 7 8 9 3 4 |
The final number of passengers is : 22 |
Ето това е моето частично решение , но не се получава резултата:
function solve (input){
let passengers = Number(input.shift());
let busStops = Number(input.shift());
let passengersLeft = Number(input.shift());
let passengersIncoming = Number(input.shift());
let totalPassengers=0;
for ( let i = 1 ; i <= busStops ; i++){
if ( i % 2 !==0 ){
totalPassengers = (passengers-passengersLeft) + passengersIncoming + 2
}
else if ( i %2 === 0) {
totalPassengers = (passengers - passengersLeft)+ passengersIncoming -2;
}
console.log(`The final number of passengers is : ${totalPassengers}"`)
}
}