Pravidlá súťažeSúťaž PALMA (Programovanie Algoritmy Matematika) je súťažou v programovaní pre stredoškolákov. Jej cieľom je dať príležitosť všetkým, ktorí si chcú zasúťažiť, otestovať svoje schopnosti analyzovať problémy, hľadať algoritmy na ich riešenie a v neposlednom rade ich vedieť i rýchlo, efektívne a korektne naprogramovať. Štruktúra súťažePALMA je súťažou dvojčlenných tímov. Súťažiaci v tíme nemusia byť nutne z tej istej strednej školy. Súťaž tvoria dve on-line kolá a jedného finálové kolo. On-line kolá prebiehajú cez Internet, na finálové kolo bude treba cestovať, pričom na finálovom kole môže tím používať len jeden počítač. Súťaž má prebiehať v štýle fair-play. Súťažiaci nesmú podvádzať, akékoľvek narušenie poctivého priebehu súťaže sa trestá diskvalifikovaním. Počas súťaže je možné používať zdroje informácií, ktoré existovali aj pred začiatkom súťaže (knihy, výpisy programov, atď., ale nie je dovolené komunikovať s niekým mimo tímu). Vo finálovom kole bude možné používať len vytlačené materiály (nemôžu sa používať diskety, USB kľúče, Internet a pod.). Finálové koláNa finále postupuje spravidla 10 tímov podľa výsledkov v kvalifikačných kolách. V prípade, že sa niektorý tím vzdá účasti, postupuje namiesto neho ďalší tím v poradí podľa výsledkovej listiny. Organizátori súťaže si môžu pred začiatkom finálového kola vyžiadať potvrdenie o návšteve školy. Potvrdenie musí obsahovať pečiatku školy a text potvrdzujúci, že obaja členovia tímu navštevujú danú školu (môžu to byť dve osobitné potvrdenia). Spôsob jeho doručenia bude upresnený pred konaním finálového kola. Priebeh jedného kola súťažeAby sa súťažiaci mohol kola oficiálne zúčastniť, musí sa jeho zaregistrovaný tím na súťaž aktivovať najskôr dva dni, najneskôr 5 minút pred súťažou. Aktivovaním potvrdzuje, že súhlasí s pravidlami a podmienkami daného kola. Neoficiálne sa môže zúčastniť ktokoľvek, bez nutnosti aktivovania na súťaž. Súťažiaci majú za úlohu riešiť sadu úloh počas daného časového limitu (rádovo niekoľko hodín). Zadanie tiež obsahuje časový a pamäťový limit, v ktorom musí program pracovať. Tieto limity sa vzťahujú na jeden testovací vstup (jedno spustenie programu). Môžete predpokladať, že náš program úspešne zbehne na všetkých vstupoch v zlomkoch (menších ako 1) daných limitov. Riešením úlohy je program v jazyku Python, Java, C, C++ alebo Pascal. Program musí vstup načítať zo štandardného vstupu (stdin, ,,klávesnica'') a vypísať výstup v presne špecifikovanom formáte na štandardný výstup (stdout, ,,obrazovka''). Formát vstupu nie je potrebné kontrolovať, vstupné dáta budú mať určite správny formát. Vždy odporúčame vyskúšať si program na vzorovom vstupe. Ak si súťažiaci myslí, že úlohu vyriešil, môže ju odoslať na testovanie automatickému testovaču. Ten riešenie vyskúša na neverejných vstupných dátach. Tieto dáta môžu byť rozdelené do niekoľkých sád popísaných v zadaní. Program musí v danom časovom a pamäťovom limite korektne vypísať správny výsledok na všetkých testovacích vstupoch. Neprideľujú sa žiadne body za čiastočne správne riešenia. Výsledkom testovania na každej sade vstupov môže byť jedna z nasledujúcich hlášok:
V prípade, že riešenie nebolo správne, súťažiaci môže riešenie upraviť a poslať ho na odtestovanie znovu. Počet riešení, ktoré môže súťažiaci poslať na jeden príklad je obmedzený na 15. Po skončení kola sa kolo presunie do archívu, kde je možné si cvične posielať riešenia a pozerať správne riešenia ostatných súťažiacich. HodnotenieKaždý úloha má pridelený počet bodov. Súťažiaci sú vo výsledkovej listine zotriedení podľa súčtu bodov za úspešne vyriešené príklady (čím viac, tým lepšie). V prípade zhody je rozhodujúcim kritériom celkový čas (čím menší, tým lepšie). Celkový čas je súčet časov za všetky úspešne vyriešené príklady. Čas za príklad je čas v sekundách, ktorý uplynie od začiatku súťaže po úspešné vyriešenie príkladu plus 20 trestných minút za každé odmietnuté riešenie tohto príkladu bez ohľadu na čas jeho odovzdania. Príkladom, ktoré neboli úspešne vyriešené sa neráta žiaden čas.
Ak ešte stále niektoré tímy zdieľajú miesto a od ich rozlíšenia závisí postup do finále, uplatňujú sa nasledujúce pravidlá v tomto poradí:
JazykZadania úloh, ako aj testovací systém budú v Slovenčine. PravidláPravidlá sú záväzné pre všetkých súťažiacich. V prípade snahy o porušenie pravidiel môže byť súťažiaci diskvalifikovaný zo sútaže. Konečné slovo má pri rozhodovaní porota. Ak na to má vážny dôvod, môže konať aj proti týmto pravidlám. Technické informácieTestovanie riešení prebieha na Linuxe. Vstup a výstup sa programu posiela presmerovaním štandardného vstupu a výstupu. Veľkosť zásobníka (stacku) je bez ohľadu na pamäťový limit obmedzená na 8 MB. Veľkosť zdrojového kódu je obmedzená na 100kB. Používané kompilátory sú GCC pre C/C++ a Free Pascal pre Pascal. Informácie o verziách sa dajú nájsť na stránke. Prostredie na finálových kolách bude vždy upresnené finalistom niekoľko týždňov pred finále. |
október 2024
november 2024
|