Задача "02. Hospital" от "For-Loop - More Exercises" от "PB-More-Exercises".
https://judge.softuni.bg/Contests/Practice/Index/1680#1 - линк към задачата.
https://softuni.bg/downloads/svn/programming-basics-v4/course-content/course-resources/More%20Exercises/5.%20PB-More-For-Loop-Exercises.docx - линк към условието
Който е решавал Задача "02. Hospital" от "For-Loop - More Exercises" от "PB-More-Exercises".
Не може да не е забелязал, че вярното решение на задачата според "judge" е напълно не логично.
По-условие: „Всеки трети ден, болницата прави изчисления и ако броят на не прегледаните пациенти е по-голям от броя на прегледаните, се назначава още един лекар.“
От така написаното условие е логично, че на всеки три дни би трябвало да се сравнява броя на прегледаните пациенти и броя на не прегледаните пациенти. След което бройката да се нулира, за да се провери за следващите три дни и т.н.
Да, обаче ако напишете кода така, системата за оценяване ви дава грешка. За да я преодолеете се оказва, че трябва да сравнявате броя на прегледаните пациенти и броя на не прегледаните пациенти не за последните три дни, а като цяло, но просто на всеки 3 дни.
Което е абсолютно безсмислено, защото ако приемем, че имате 7 лекаря в началото и първия ден имате 100 пациента а на следващите 90 дни 0, вие на всеки 3 дни ще си правите проверката и тя ще показва, че трябва да назначите нов лекар и така накрая ще имате 37 лекаря при 90 дни никакви пациенти.