Zapoctovy test, 20.1.2010 [10:00]

Milk at 2010-01-20 12:55:49

Úloha: implementovat trii
Pro ty co neznají:http://cs.wikipedia.org/wiki/Trie
Aplikace měla načíst z textového souboru telefonní seznam a pak v něm vyhledávat. Podmínkou bylo implementovat a použít trii.

Formát souboru:
Jmeno Prijmeni|telefonní číslo
Jouda Joudovic|608555333
jouda Nejoudovic|495600600

Jméno a přímení obsahuje jenom malá a velká písmena bez háčků a čárek. U telefonního čísla nejsou zbytečné mezery a vstup je korektní.
Z dat se měla postavit trie a pro zadaný vstup od uživatele vypsat všechny lidi začínající na daný řetězec. Aplikace není case sensitive.
Aplikace se ukončí #. Pokud nenajde schodu, tak to oznámí.

Příklad vstupu:
*>Jouda
<Jouda Joudovic 608555333
<jouda Nejoudovic 495600600

a
<nic nenalezeno
#*

Bylo na to tři hodiny čistého času a explicitně povolené e-zdroje byly msdn a cplusplus.com.

Cappuccino at 2010-01-20 13:15:33

Jaká byla dneska úspěšnost?

Acris at 2010-01-26 14:44:40

Jaká byla úspěšnost, nevím. Někteří to vzdali již v průběhu. Ale z těch, kdo se snažili až do konce, to nakonec dotáhli možná i všichni. Čas byl o něco málo nastaven.

Přikládám své řešení. Není asi nikterak hvězdné (nejsem zrovna zkušený c++ programátor ;)), ale snad ok.

Ještě dodávám, že zadání bylo v několika věcech ještě konkrétnější, např. na výstupu měla (ale nebylo to asi nutně vyžadováno) být jména opět s velkým písmenem na začátku. Ale ten prefix mohl být zadán s jakkoliv velkými písmeny (tedy case insensitive). A bylo zaručeno, že každé jméno tam bude nejvýše jednou.

Attachments: