Nejlevnější vaření - Töpfer, Pavel (Matematika–Fyzika–Informatika, 2020)
Článek ze série věnované úlohám Matematické olympiády – kategorie P (programování) diskutuje různé možnosti řešení jedné teoretické soutěžní úlohy z krajského kola konaného ve školním roce 2017/18. Úkolem je nalézt způsob, jak nejlevněji uvařit jídlo pomocí zadaného seznamu receptů. Jsou přitom dány vstupní ceny jednotlivých surovin a jídla uvařená podle jednotlivých receptů můžeme používat jako vstup pro další navazující recepty. Algoritmy řešící tuto úlohu jsou analogií známých grafových algoritmů pro určení nejkratších vzdáleností v ohodnoceném grafu: algoritmu Bellmanova-Fordova a Dijkstrova. Článek uvádí i stručný nástin těchto dvou grafových algoritmů. Kromě detailního rozboru úlohy najdeme v článku tři základní varianty řešení s různou časovou složitostí. Dvě z těchto řešení jsou zapsána i ve formě ukázkového programu.