Zapocet 25.1. 10:00
Napsal: 25. 1. 2008 12:57
Dneska prisel pak Mikle a dal nam toto zadani:
V souboru dostaneme zadan graf a mame vypsat okoli jednoho jednoho bodu az do hloubky h. Format souboru: Na kazdem radku mame nejaky retezec a to je nazev vrcholu. Pokud jsou na radku 2 retezce (oddelene prave jednou mezerou), tak mezi temito vrcholy vede hrana (graf je NEORIENTOVANY ). Prazdny radek znaci konec vstupu. Takze to mohlo vypadat treba takhle:
Vrchol1
12345 6789
Vrchol1 12345
.....
V souboru muze byt nejaka hrana vicekrat, v grafu mohou byt cykly a tez muze byt nesouvisly. Program volame s parametry "soubor_vstupu vrchol hloubka".
Pri vypisu se nesmime samozrejme zacyklit, nesmime zadny vrchol vypsat vicekrat a u kazdeho vypsaneho vrcholu tez napsat ve ktere "vrstve" smerem od stredu se nachazi (jako stred bereme zadany vrchol - vrstva 0). Pokud se jeden vrchol nachazi ve vice vrstvach, vypsat jen v te nejblizsi.
No, podle me jedno z tech lehcich zadani, prvni clovek odchazel asi po hodine. Ja to mel za hodinu a 3/4 a v dost lidi uz v te dobe taky zvedalo ruce.
Jen v kratkosti nacrtnu jedno z moznych reseni. Graf je asi dobre reprezentovat seznamem sousedu. Na mozne duplicity ve vstupnich souborech a vypisech se hodi mnozina (set) - proste se jen insertuje, vicecetne zaznamy nevzniknou. Vypis po vrstvach jsem resil pres 2 fronty s tim, ze jiz vypsane vrcholy jsem hazel do dalsi mnoziny abych nevypsal neco 2x.
V souboru dostaneme zadan graf a mame vypsat okoli jednoho jednoho bodu az do hloubky h. Format souboru: Na kazdem radku mame nejaky retezec a to je nazev vrcholu. Pokud jsou na radku 2 retezce (oddelene prave jednou mezerou), tak mezi temito vrcholy vede hrana (graf je NEORIENTOVANY ). Prazdny radek znaci konec vstupu. Takze to mohlo vypadat treba takhle:
Vrchol1
12345 6789
Vrchol1 12345
.....
V souboru muze byt nejaka hrana vicekrat, v grafu mohou byt cykly a tez muze byt nesouvisly. Program volame s parametry "soubor_vstupu vrchol hloubka".
Pri vypisu se nesmime samozrejme zacyklit, nesmime zadny vrchol vypsat vicekrat a u kazdeho vypsaneho vrcholu tez napsat ve ktere "vrstve" smerem od stredu se nachazi (jako stred bereme zadany vrchol - vrstva 0). Pokud se jeden vrchol nachazi ve vice vrstvach, vypsat jen v te nejblizsi.
No, podle me jedno z tech lehcich zadani, prvni clovek odchazel asi po hodine. Ja to mel za hodinu a 3/4 a v dost lidi uz v te dobe taky zvedalo ruce.
Jen v kratkosti nacrtnu jedno z moznych reseni. Graf je asi dobre reprezentovat seznamem sousedu. Na mozne duplicity ve vstupnich souborech a vypisech se hodi mnozina (set) - proste se jen insertuje, vicecetne zaznamy nevzniknou. Vypis po vrstvach jsem resil pres 2 fronty s tim, ze jiz vypsane vrcholy jsem hazel do dalsi mnoziny abych nevypsal neco 2x.