Warning
This page is located in archive.

Rozvrh na FEL Posluchači ALG Odevzdávací systém BRUTE Diskusní fórum

První tři domácí úlohy jsou již zadány v BRUTE.
Zájemci mohou řešit a odevzdávat již v předstihu na začátku semestru.

ALG - cvičení

Provoz v semestru

Podmínky zápočtu
Kromě minima 13 z možných 24 bodů za řešení úloh je ke získání zápočtu nezbytná pravidelná docházka do cvičení s max. 2 neomluvenými absencemi. Předpokládáme, že posluchači se vyvarují odevzdávání plagiátů a seznámí se s pravidly uvedenými na společné stránce: Plagiáty.

Programovací úlohy
Semestr obsahuje 8 domácích programovacích úloh sumárně ohodnocených 24 body, z čehož je k získání zápočtu nutno získat alespoň 13 bodů. Úlohy jsou zadávány a řešení vyhodnocována prostřednictvím odevzdávacího systému BRUTE.

  • Každá úloha implementuje některé téma přednášky, toto téma může být pouze dílčí částí úlohy.
  • Akceptované řešení úlohy je takové, které správně spočte výsledky na alespoň 8 z 10 testovacích souborů.
  • Řešení musí být také efektivně naprogramováno, každý datový soubor má stanovený časový limit, do nějž musí být data zpracována a vypsán výsledek. Limit je většinou dvojnásobek času, za který soubor zpracuje autorské referenční řešení v Javě. Limit se zaokrouhluje nahoru na celé sekundy, typicky nepřekračuje 5-10 vteřin.
  • Úlohy lze odevzdat i po termínu, za každý započatý týden prodlení je však při hodnocení odečten jeden bod.
  • Individuálně se lze domlouvat o posunutí termínu s předstihem v odůvodněných případech (nemoc, zahraniční cesta apod).
  • Otázky týkající se domácích uloh i dalších událostí během semestru je vhodné řešit pomocí diskusního fóra ALG.
  • Odevzdávání a vyhodnocování úloh v brute lze si vykoušet a nacvičit pomocí jednoduché, cvičné a neklasifikované úlohy. Řešitelé obeznámení s brute mohou tuto úlohu klidně vynechat.

Termíny a hodnocení domácích úloh

   zadání -- odevzdání         
1.   24.9. -- 17.10.   ( Asymptotic complexity )       
2.   8.10. -- 31.10.   ( Recursion/Backtrack )       
3.  15.10. --  7.11.   ( Tree search )  
    (Úlohy 1.-3. byly letos zadány nestandardně již před začátkem semestru.)     
4.  29.10. -- 21.11.   ( Graph search )       
5.   5.11. -- 28.11.   ( BST processing )       
6.  12.11. -- 12.12.   ( AVL processing )     
7.  26.11. -- 28.12.   ( Dynamic Programming )      
8.  10.12. --  9.1.    ( Dynamic Programming )
         
Správně spočtených 10 z 10 testovacích případů     ... 3 body
Správně spočtených 9 z 10 testovacích případů      ... 2 body
Správně spočtených 8 z 10 testovacích případů      ... 1 bod
Správně spočtených 7 nebo méně testovacích případů ... 0 bodů

Pozdní odevzdání ... -1 bod za každý započatý týden zpoždění.

V BRUTE u úloh vidíte počet správně vyřešených zadání 
(minus penalizaci za pozdní odevzdání), 
ale ne finální počet bodů podle výše uvedeného přepočtu. 
Finální počet bodů za úlohu spočítáme až u zkoušky, 
a je roven max(0, body v BRUTE - 7).

Upload systém
Komunikace s upload systémem je popsána v oddílu Upload System.
Každou úlohu doprovází sada neveřejných testovacích souborů a sada veřejných souborů se správnými výsledky. Veřejné soubory jsou uloženy v odevzdávacím systému a systém spouští řešitelovu úlohu pokaždé rovněž na těchto datech a vrací řešiteli kompletní výstup jeho řešení na STDOUT a STDERR pro každý veřejný soubor. Veřejné soubory jsou součástí zadání úlohy a jejich obsah je podobný obsahu testovacích souborů a poskytuje tak další příležitost k účinnému ladění. Počet testovacích a veřejných souborů není pevně určen a pro různé úlohy se může lišit. Zejména veřejné soubory mohou z trénovacích důvodů zcela chybět.

Materiály na cvičení

Úlohy k procvičování a zkoušce

Řád růstu funkcí a asymptotická složitost
Bez řešení a_complex_alg_unsol.pdf a s řešením a_complex_alg.pdf
Rekurze
Bez řešení b_recur_alg_unsol.pdf a s řešením b_recur_alg.pdf
Stromy, průchod stromy
Bez řešení c_treestq_alg_unsol.pdf a s řešením c_treestq_alg.pdf
Vyhledávací stromy
Bez řešení d_bst_avl_b_alg_unsol.pdf a s řešením d_bst_avl_b_alg.pdf
Řazení
Bez řešení e_sort_alg_unsol.pdf a s řešením e_sort_alg.pdf
Hash (rozptylovací tabulky)
Bez řešení f_hash_alg_unsol.pdf a s řešením f_hash_alg.pdf
Dynamické programování
Bez řešení g_dynpgm_alg_unsol.pdf a s řešením g_dynpgm_alg.pdf

courses/b4b33alg/cviceni.txt · Last modified: 2022/01/07 21:35 by nemeceka