Легенда:

П – Прашање

О – Одговор

С – Совет

 

П: На страната со резултати се појавува / на одредена задача?

О: Тоа значи дека задачата не може да се компајлира.

С: Работете исклучиво со Turbo Pascal 7.0 или Turbo C/C++ 3.0. Немојте притоа да користите нити Borland Pascal 7.0 (protected mode), нити Turbo C/C++ 3.0 мемориски модели различни од Standard. Сметајте дека имате 64KB статичка меморија (за променливи), и 640KB меморија динамичка меморија.

 

П: Задачата ми работи ако на крај нема нова линија.

О: Според правилата наведени во правилата за натпревари јасно стои дека и во последната линија на влезни податоци (дефинирана во задачата) се наоѓа крај на линија (ентер).

С: Доколку читате карактер по карактер очекувајте на крајот на секоја линија, па и на последната да најдете ASCII карактери со код 13 и 10 (карактери кои означуваат крај на линија)

 

П: Операциите со стринг даваат грешен излез или не вчитуваат тоа што е во датотеката.

О: Во Pascal стринг е максимум 256 карактери. Во C и C++ се поддржани подолги стрингови. Меѓутоа и во двата случаи стринг функциите оперираат со максимум 256 карактери. Тоа е ограничување што можеби го немаат други компајлери, но бидејќи се користат TC 3.0 и TP 7.0, внимавајте на тој факт.

 

П: Имам 0 поени, а мене задачата ми функционира на тест примерите.

О: Можни се повеќе сценарија, но најчесто е еден од следните случаи:

-         Во задачите никако немојте да заборавите readln или scanf кој очекува влез од тастатура. Во тој случај вашата програма ќе чека влез кој никогаш нема да го добие, и со тоа ќе падне на временското ограничување.

С: Ако користите некои од овие наредби за да го стопирате извршувањето на задачата во даден момент, внимавајте на крај да ги одстраните.

-         Можно е да сте заборавиле да ја затворите излезната датотека, и со тоа иако сте запишале нешто во неа, заради кеширањето, истото не е впишано во датотеката.

 

П: Поминуваат само некои тест примери, а задачата е точна.

О: Секогаш кога решавате задачи размислете и на ектремните случаи (максимален или минимален влез). Можно е во некои од тие случаи да добиете броеви кои ги надминуваат границите предвидени со integer или слично, и затоа морате да ги дефинирате проемнливите со longint. Меѓутоа бидете свесни дека за тоа потоа ќе ви треба двојно повеќе мемеорија.

С: Кога се користи fscanf со long int променлива да се користи %ld а не %d

С: Во C и C++ морате експлицитно да кастувате доколку имате целобројни константи, а променливите во кои ги сместувате не се од тип int туку на пример unsigned int.