C# Lists More Exercise Drum Set
Здравейте, може ли малко помощ на тази задача:
линк към условие: https://judge.softuni.bg/Contests/Practice/DownloadResource/3078
код 50/100 https://pastebin.com/BX6q8de4
Здравейте, може ли малко помощ на тази задача:
линк към условие: https://judge.softuni.bg/Contests/Practice/DownloadResource/3078
код 50/100 https://pastebin.com/BX6q8de4
В else-a (while > for > if > else), където махаш елемент от drums и price при неналичие на достатъчна сума не трябва да увеличаваш i, а да го намаляш, тъй като при увеличение прескача един елемент и ти обърква сметката. Сложи една червена точка на else-a и го дебъгни с тоя инпут(това ти е инпута от втория zero test)
154.00
55 111 3 5 8 50
2
50
8
23
1
Hit it again, Gabsy!
ще видиш, че при второто влизане там, като ти махне първият елемент с индекс 0, вторият отива на първо място (става с индекс 0) , а for цикъла ти i се е увеличил с едно, тоест, вместо да мине едно назад, той прескача цели два барабана.
Та с две думи, else-a ти трябва да изглежда така:
else
{
drums.RemoveAt(i);
price.RemoveAt(i);
i--;
}
и джуджето ще ти даде 100 от 100.
Колега, ето променен кода ти, дава 100/100 https://pastebin.com/5KFGLed1
Махнала съм else конструкцията, мисля че като се опитваш да изтриеш индекси по време на първия for-loop се разбъркват индексите и за това съм направила друг for-loop след първия, за да се изтрият тези стойности, които са със стойност 0 или под 0.
Благодаря :)
Благодаря :)