задача Vacation time limit
Здравейте не мога да разбера защо толкова ми се бави кода
времето е Time: 0.314 s
Решението ми е почти идентично с другите, но много по-бавно и не мога да резбера защо ?
Здравейте не мога да разбера защо толкова ми се бави кода
времето е Time: 0.314 s
Решението ми е почти идентично с другите, но много по-бавно и не мога да резбера защо ?
Какво е условието на задачата?
Гледайки кода ти, единственото място където може да има забавяне, е while цикъла, и по-специално когато нито едно от условията (needMoney > moneyAvail) и (spendCounter == 5 && saveCounter == 0) не се изпълни, защото единствено те могат да прекъснат цикъла.
Почивка
Джеси е решила да събира пари за екскурзия и иска от вас да ѝ помогнете да разбере дали ще успее да събере необходимата сума. Тя спестява или харчи част от парите си всеки ден. Ако иска да похарчи повече от наличните си пари, то тя ще похарчи колкото има и ще ѝ останат 0 лева.
Вход
От конзолата се четат:
Пари нужни за екскурзията - реално число в интервала [1.00.. .25000.00]
Налични пари - реално число в интервала [0.00... 25000.00]
След това многократно се четат по два реда:
Вид действие – текст с възможности "spend" и "save".
Сумата, която ще спести/похарчи - реално число в интервала [0.01… 25000.00]
Изход
Програмата трябва да приключи при следните случаи:
Ако 5 последователни дни Джеси само харчи, на конзолата да се изпише:
"You can't save the money."
"{Общ брой изминали дни}"
Ако Джеси събере парите за почивката на конзолата се изписва:
"You saved the money for {общ брой изминали дни} days."
Промених условието на while, но пак ми дава time limit и грешка на тест 6
https://pastebin.com/ChJn1xUU
Типа на променливата, в която четеш парите (на ред №17) е от тип int, докато в условието е указано, че сумата ще е "реално число в интервала [0.01… 25000.00]".
Ако промениш типа от int на double, ще се реши Time limit проблема (случва се, защото не се подават повече входни данни от Judge, след като са подадени достатъчно, за да бъде събрана сумата).
Тестове №#7 и №9 дават грешен резултат.
Благодаря много