Cvičení z Programování 1 a Algoritmizace pro pokročilé

V zimním semestru 2021/2022 vedu speciální cvičení z předmětů Programování 1 [NPRG030] a Algoritmizace [NPRG062] pro pokročilé studenty, kteří již nasbírali nějaké zkušenosti z programování (třeba v olympiádách a korespondenčních seminářích) a chtěli by se naučit víc.

Cvičení se koná ve čtvrtek od 10:40 v N3, čas od 9:50 (v rozvrhu jako Algoritmizace) je vyhrazen na konzultace po předchozí domluvě. Kdo chcete chodit, přihlašte se v SISu na oba dva předměty.

Pokud si nejste jisti, že pokročilejší variantu zvládnete, můžete se zapsat na standardní cvičení a k nám chodit navíc.

Podmínky na získání zápočtu najdete v pravidlech hry.

Pokud chcete cokoliv konzultovat, ozvěte se mi na adresu mares+p1x@kam.mff.cuni.cz.

Co jsme dělali

datum co se cvičilo
30. 9. Jedno chybějící číslo. Házení vajíček z mrakodrapu. Nejmenší chybějící číslo v rostoucí posloupnosti.
7. 10. Nejdelší úsek bez opakování. Dvojice se zadaným součtem.
14. 10. Nejdelší vyvážený úsek. Nejdelší bílý úsek.
21. 10. Podmatice se zadaným součtem na mnoho způsobů (zadané velikosti, zadané výšky, libovolná).
28. 10. Cvičení se nekoná. Vyberte si svůj svátek.
4. 11. Okénkova minima a mediány.
11. 11. Pokračování z minula.
18. 11. Generování všech objektů s danou vlastností: posloupnosti nul a jedniček, právě jedna změna, nejvýše k jedniček.
25. 11. Generování permutací, právě jedno prohození.
2. 12. Náhodné permutace a k-tice. Simulace jednoho náhodného generátoru druhým.
9. 12. O stromech, strážnících a mafiánech váženě i neváženě.
16. 12. Asfaltéři ve stromech i obecných grafech. Mafiánský kápo.
6. 1. Barvení rovinných grafů 6 a 5 barvami. Proč nefunguje hladové barvení.
Stránku spravuje Martin Mareš