C# OOP Basics - February 2018 - Interfaces And Abstraction Exercise - 08.Military Elite
Здравейте! Някой може ли да помогне с 0.8 Military Elite -> трети тест гърми с недостатъчна памет ? Благодаря предварително!
Решение
EDIT: Пренаписах изцяло Main метода - премахнах case insensitive проверките, разкарах Linq, но оптимизацията падна с едва 6 MB. Не знам какво изпускам...
Да, сам си открил проблема, което е най-готино. :)
Ще си позволя една забележка - ползването на continue го намирам за лоша практика. Аз се опитвам така да си изграждам логиката, че да не ми се налага употребата. Както и break за щяло и нещяло, да не говорим за goto. Не винаги е възможно и понякога без тях кодът ще стане още по-трудно четим.
В задачи като тези, където не ни интересува "лош" изход, тоест без else, просто ще набутам всичко в if(true), нищо че ми се отмества кода с една табулация.
е ти този невалиден корпус трябва още при валидацията на самия командос да го хванеш защо там вътре си го правил незнам, но важното е че си го намерил.
Благодаря за забележката! Според мен е въпрос на лично предпочитание как дали да е с continue или if(true), но в случая щеше наистина да е по-добре, както ти предлагаш.
TeodorStefanovPld Исках да избегна използването на вложен try catch бпок при командоса и за това реших да валидирам направо в Main-а, a не в set-ъра на SpecializedSoldier.
try catch блока няма нищо общо с командоса просто като не отговаря corp.Хвърляш exception и си го хващаш в main и продължаваш.