mali sme vytvorit telefonny zoznam podporujuci nasledovne prikazy
a Jan Novak 775436985 // a=add
a Marek Tlusty 12345
a Jan Novak 074580 // Janov Novakov je viac, pridam dalsieho
a Jan Novak 074580 // pozor nato, aby mi nepridalo dvakrat tu istu osobu
d Jan Novak 074580 // d=delete. Cloveka jednoznacne identifikujem az ked viem aj jeho cislo
? No*k //?=query najde vsetky polozky, ktore viem namatchovat na tento "regular"
q // q = quit
teda vyhladavanie je podla prijmeni a dokaze vyhladavat s pouzitim hviezdicky. Hviezdicka sa vo vyraze moze vyskytnut maximalne raz.
Zastupuje lubovolny pocet lubovolnych znakov
Celkovo priklad bol lahky, ja som odchadzal po asi dva a pol hodinach a bol so medzi prvymi. Kod som spravil na 140 riadkov.
Riesenie:
pouzil som
std::map<string, vector<string> > telefonny_zoznam;
kde
telefonny_zoznam["Novak"] == vector{"Jan Novak 775436985", "Jan Novak 074580"}
konkretne cele riesenie mam na
http://pastebin.com/HkKV2pNq