Софтуерно Инженерство
Loading...
GeorgiMutafchiev avatar GeorgiMutafchiev 21 Точки

11. Oldest Family Member PHP WEB

Здравейте, 

опитвам се да реша задачата от OOP-Basics - Oldest Family Member от модула PHP WEB, но Judge-системата ми дава 66/100. Това е линк към кода ми: http://pastebin.com/ZRs4CziL. Ще се радвам ако някой ми покаже къде греша.

Благодаря предварително!

Поздрави!

0
PHP Web Development Basics
kristina111 avatar kristina111 58 Точки

Грешката ти е в това, че запазваш създадените обекти в асоциативен масив с ключ техните години. Какво става ако във входа имаш двама човека с едни и същи години - вторият ще презапише първия. А мисля, че джъдж очаква, че ако има двама човека с еднаква възраст, първият ще е по-старият.

Оправих ти кода като в масива запазвам всички новосъздадени обекти. След това с функция връщам най-стария, като проверявам дали всеки следващ човек (по ред на подаване от джъдж и създаване) е по-възрастен от предишния. Ако да - той става най-стария човек. Ако не - първия член от масива остава най-стария човек (в началото на функцията допускам, че той е най-стария). Така кодът дава 100/100.

http://pastebin.com/LMjhC55e

Друг вариант е в цикъла да проверяваш дали в асоциативния масив има ключ, който е годините на новосъздадения човек във всяка една итерация. Ако има - не го записваш, а продължаваш със следващата итерация. http://pastebin.com/eBiJAkxM

0
26/02/2017 10:11:03