Zkouška 22.6.

Uživatelský avatar
stnicolaus
Matfyz(ák|ačka) level II
Příspěvky: 73
Registrován: 22. 1. 2006 17:39
Typ studia: Informatika Bc.
Bydliště: Plzeň
Kontaktovat uživatele:

Zkouška 22.6.

Příspěvek od stnicolaus »

Testovali jsme novou úlohu, která se jmenovala LIGA

Vstupem jsou 3 soubory:
TEAMS - na každém řádku je ZKRATKA TÝMU <TAB> CELÉ JMÉNO TÝMU
MATCHES - na řádku je ZKRATKA 1. TÝMU <POMLČKA> ZKRATKA 2. TÝMU <TAB> GÓLY 1. TÝMU <DVOJTEČKA> GÓLY 2. TÝMU [ <TAB> KÓD ZÁPASU ]
POINTS - [ KÓD ZÁPASU ] <TAB> BODY ZA VÝHRU DOMA <TAB> REMÍZA DOMA <TAB> PROHRA DOMA <TAB> VÝHRA VENKU <TAB> REMÍZA VENKU <TAB> PROHRA VENKU

Parametr KÓD ZÁPASU je nepovinný (v souboru matches i points) - pokud není uveden předpokládá se default.


Program může mít libovolný počet parametrů s následujícím významem:
* - vypíše křížovou tabulku (matici zápasů) - týmy jsou uspořádány abecedně podle celého názvu týmu; pokud dopadl zápas TÝM 1 - TÝM 2 2:0, tak do tabulky musíme vložit i výsledek TÝM 2 - TÝM 1 0:2; týmy spolu mohli sehrát i více utkání -> je nutn0 vzpsat v9ce tabulek
# - vypíše tabulku soutěže (o pořadí rozhodují body), při rovnosti bodů rozhoduje vzájemná tabulka týmů se stejným počtem bodů a s pořadím body -> rozdíl skóre -> vstřelené góly
ABR - přehled všech utkání týmu se zkratkou ABR (formát utkání viz soubor matches)
ABR/KÓD BODŮ - přehled utkání týmu ABR, které byly hodnoceny podle daného KÓDU
ABR/TYP UTKÁNÍ - přehled utkání týmu ABR, které odpovídají požadovanému typu (např. W výhra, R remíza, L prohra, H doma, A venku + všemožné kombinace jako wildcard nebo regexp)


Co se týká řešení, tak úloha byla docela jednoduchá, ale Forst nebyl řešeními moc nadšen - většina lidí použila pro řešení brutální sílu. Jeho idea byla předpřipravit si napřed soubor matches do lepšího formátu. Např. aby na konci každé řádky bylo uvedeno TÝM1 zvítězil, TÝM2 prohrál atd. -> poslední 3 parametry pak spočívají v jediném grepu a není potřeba pro každý soubor soubor matches zvlášť parsovat.
I přesto byla úspěšnost docela dobrá - z 23 lidí vyhodil jenom 3, kolem 12-14 lidí dostalo rovnou známku a zbytek šel na ústní.
Odpovědět

Zpět na „2005“