
1 Odporúčané názvy programov
Odporúčame odovzdávať programy s takýmito koncovkami:
- Pascal: .pas, .dpr
- C: .c
- C++: .cpp, .cc
2 Odporúčania pre riešenia
Ukážeme si vzorové riešenie tohto problému pre jednotlivé jazyky.
2.1 Pascal/Delphi
Programy v Pascale nemôžu používať žiadnu knižnicu (žiadne uses), t. j. ani Crt alebo SysUtils.
V Delphi 7 treba vytvoriť konzolovú aplikáciu cez File/New/Other... Console application.
Príklad riešenia:
program Sucet; |
2.2 C/C++
Funkcia main musí byť typu int a jej návratová hodnota musí byť 0.
Upozorňujeme, že pre niektoré veľké vstupy/výstupy môže byť použitie cin a cout v C++ pomalé.
Príklad riešenia:
int n, a, b; |
3 Odovzdávanie riešenia
Pred každým odovzdaním riešenia odporúčame vyskúšať skompilovať daný program verziou kompilátora, ktorý je na serveri. Ďalej skontrolujte, či nepoužívate niektoré zo zakázaných funkcií.
4 Presmerovanie vstupu a výstupu
Všetky problémy sú zadané tak, že vstupné dáta majú byť načítavané zo štandardného vstupu (klávesnice) a výstup má byť vypísaný na štandardný výstup (obrazovku). Aby ste mohli jednoducho testovať svoje programy, použite presmerovanie vstupu pomocou < a presmerovanie výstupu pomocou >. Ak chcete ako vstup programu P.exe načítať dáta zo súboru vstup.txt (t.j. akoby ste to, čo je v súbore, písali na klávesnici), spustite program takto:
- P.exe < vstup.txt
Ak chcete vypísať výstup programu P.exe do súboru vystup.txt, spustite program takto:
- P.exe > vystup.txt
Ak chcete aj načítať vstup zo súboru a aj vypísať výstup do súboru, použite:
- P.exe < vstup.txt > vystup.txt
5 Rozsah typov premenných
Pascal: Rozsah niektorých typov premenných pre kompilátor fpc:
Typ premennej | Rozsah |
Integer | -32768..32767 |
Longint | -2147483648..2147483647 |
Word | 0..65535 |
Longword | 0..4294967295 |
Int64 | -9223372036854775808..9223372036854775807 |
C: Rozsah niektorých typov premenných pre kompilátor gcc:
Typ premennej | Rozsah |
short int | -32768..32767 |
int | -2147483648..2147483647 |
unsigned short int | 0..65535 |
unsigned int | 0..4294967295 |
long long | -9223372036854775808..9223372036854775807 |
6 Odporúčaná stratégia
Riešenia problémov nemusíte odovzdávať v poradí, v ktorom sú zadané! Vzhľadom na spôsob merania času pre správne odovzdané riešenia (celkový čas sa pre každý príklad počíta od začiatku súťaže), je výhodné najprv identifikovať a vyriešiť najľahšie problémy (tie, ktoré vyriešite v najkratšom čase).
Príklad: Ak potrebujeme na vyriešenie problému A 3 hodiny a na vyriešenie problému B 30 minút, potom môžeme:
Riešiť najprv problém A, a potom problém B (obr. 1). Súčet časov bude (A-Z) + (B-Z) = 3 + 3,5 = 6,5 hodiny.
Riešiť najprv problém B a potom problém A (obr. 2). Súčet časov bude (B'-Z) + (A'-Z) = 0,5 + 3,5 = 4 hodiny.

Obr. 1. Čas pre riešené príklady - najprv ťažší.

Obr. 2. Čas pre riešené príklady - najprv ľahší.