The lift
Здравейте,
на задача The lift (https://judge.softuni.org/Contests/Practice/Index/2517#1) от минали изпитни ми дава 80 точки и не мога да разбера къде греша.
Има няколко логически грешки в кода:
Ред №22:
currentStateOfLift[i] = allTourists;
// трябва да е:
currentStateOfLift[i] += allTourists;
Ред №24 - трябва да се отпечатва само когато има останали свободни места на лифта:
System.out.println("The lift has empty spots!");
Примерно решение на проблема:
if (allTourists <= freeSpaces){
currentStateOfLift[i] += allTourists;
allTourists = 0;
boolean hasFreeSeats = false;
for (int usedSeats : currentStateOfLift) {
if (usedSeats < 4) {
hasFreeSeats = true;
break;
}
}
if (hasFreeSeats) {
System.out.println("The lift has empty spots!");
}
break;
}
Всъщност не мисля, че грешката ми е там, защото съм задала условие ако туристите са станали по-малко от свободните места, лифта да се напълни с всички тези туристи, и реално чакащите туристи стават 0.