Международна олимпиада · Информатика

Международна олимпиада по информатика (IOI)

Международната олимпиада по информатика (IOI) е най-престижното световно състезание по алгоритмично програмиране за ученици. България е сред основателите ѝ — първата IOI се провежда у нас, в Правец, през 1989 г. Олимпиадата е за ученици, които са сред най-добрите на Националната олимпиада по информатика.

Какво проверява

IOI проверява умението да се измисли ефективен алгоритъм за трудна задача и да се напише правилна, бърза програма. Не е достатъчно решението да работи — то трябва да се вмести в строги ограничения за време и памет при много големи входни данни.

Задачите изискват познания по структури от данни, графи, динамично оптимиране, комбинаторика и математика, но най-вече — изобретателност. Често една задача има „лесна“ част, решима с прост подход, и трудни части, за които е нужна нова идея.

Формат и структура

По правилата на IOI 2026 (Ташкент, Узбекистан) състезанието има два състезателни дни. Всеки ден участниците получават три задачи и имат 5 часа за решаването им. Преди първия ден има двучасово пробно състезание, за да се запознаят с компютрите и системата за проверка. По правилника двата състезателни дни са предшествани и последвани от ден без състезание.

Решенията се пишат на C++ и се изпращат към автоматична система за оценяване. Всяка задача носи до 100 точки и е разделена на подзадачи. След всяко изпращане системата показва резултата по подзадачи, а за крайна оценка на подзадача се взима най-добрият резултат от всички изпращания. Има ограничение от 50 изпращания на задача и не по-често от веднъж на минута (освен в последните 15 минути).

Задачите се превеждат на националните езици от ръководителите на отборите.

Как се оценява / награди

Точките от двата дни се събират. Наградите се определят по правилника на IOI:

  • злато — най-високият праг, при който поне 1/12 от участниците получават злато;
  • сребро — прагът, при който поне 1/4 от всички получават злато или сребро;
  • бронз — прагът, при който поне половината участници получават медал;
  • похвална грамота — участник без медал, който в поне един от двата дни е в по-добрата половина на класирането.

България има 30 златни, 58 сребърни и 47 бронзови медала от IOI. На IOI 2026 в Ташкент (9–16 август, 386 участници от над 97 държави) българският отбор спечели 1 златен, 1 сребърен и 2 бронзови медала.

Как се влиза / кой може да участва

По правилника на IOI състезател може да бъде ученик, който през по-голямата част от периода 1 септември – 31 декември на предходната година е учил в средно (или по-ниско) училище и не е бил студент, и не е по-възрастен от 20 години към 1 юли на годината на олимпиадата. Всяка държава участва с отбор от един до четирима състезатели, ръководител и заместник-ръководител.

В България пътят минава през Националната олимпиада по информатика, която се провежда в три кръга — общински, областен и национален — в пет възрастови групи: A (11.–12. клас), B (9.–10. клас), C (7.–8. клас), D (6. клас) и E (4.–5. клас). Задачите се решават на C++. През 2026 г. националният кръг беше във Варна (13–16 март). Резултатите от олимпиадата, комбинирани с други състезания, определят четиримата в националния отбор.

Интересен факт: освен първата IOI (Правец, 1989), по официалния сайт на олимпиадата България е определена за домакин и на IOI 2029.

Кога и къде е IOI 2027

IOI 2027 ще се проведе от 12 до 19 септември 2027 г. в Института „Хасо Платнер“ (HPI) в Потсдам, Германия. Следващите домакини според официалния сайт на IOI са Япония (2028), България (2029) и Макао (2030).

Отборът за 2027 г. ще се определи по резултатите от Националната олимпиада по информатика през учебната 2026/2027 година и съпътстващите състезания.

По графика на МОН за учебната 2026/2027 г. (Заповед № РД09-3344/31.08.2026 г.) националният кръг на олимпиадата по информатика е на 12–15 март 2027 г.

Как да се подготвим

Подготовката за IOI е дълга и започва обикновено още в прогимназията (групи D и E на олимпиадата). Полезно е:

  • да се овладее добре C++ и стандартната библиотека;
  • да се учат систематично алгоритмите и структурите от данни — сортиране, търсене, графи, динамично оптимиране, дървета на интервали и др.;
  • да се решават задачи от минали IOI и национални олимпиади, като се обръща внимание на подзадачите — частичните точки са много важни;
  • да се участва редовно в онлайн състезания по програмиране, за да се тренира работата под времеви натиск;
  • да се анализират чужди решения след всяко състезание.

Силната математическа основа (комбинаторика, теория на числата, логика) също помага много — голяма част от олимпийците по информатика са и силни състезатели по математика.

Източници

Информацията е събрана от официалните документи на организатора и е обновена на 25 септември 2026 г.. При разлика важи официалният регламент.

Да поговорим

Въпроси за състезанието.

Най-честите въпроси на ученици и родители.

Колко ученици има в българския отбор за IOI?+

До четирима състезатели, плюс ръководител и заместник-ръководител.

На какъв език се програмира?+

На C++ — така е и на IOI, и на Националната олимпиада по информатика.

Колко задачи има и колко време продължава?+

Два състезателни дни по три задачи за 5 часа, всяка задача носи до 100 точки. Преди това има двучасово пробно състезание.

Колко участници получават медал?+

Половината: около 1/12 злато, около 1/6 сребро и около 1/4 бронз.

Мога ли сам да се запиша за IOI?+

Не. Отборът се определя по резултатите от Националната олимпиада по информатика и други състезания; индивидуална регистрация няма.

Къде и кога е IOI 2027?+

В Потсдам, Германия, от 12 до 19 септември 2027 г., в Института „Хасо Платнер“.

Вярно ли е, че първата IOI е била в България?+

Да — първата IOI се провежда в Правец през 1989 г., а България е определена за домакин и на IOI 2029.

Как се представи България на IOI 2026?+

С 1 златен, 1 сребърен и 2 бронзови медала в Ташкент, Узбекистан.