Zasady organizacji zawodów XXVIII Olimpiady Informatycznej w roku szkolnym 2020/2021*

Zmiany w dokumencie zostały wprowadzone zgodnie z rozporządzeniem Ministra Edukacji Narodowej z dnia 12 sierpnia 2020 r. zmieniającym rozporządzenie w sprawie szczególnych rozwiązań w okresie czasowego ograniczenia funkcjonowania jednostek systemu oświaty w związku z zapobieganiem, przeciwdziałaniem i zwalczaniem COVID-19.

§ 1. Wstęp

Olimpiada Informatyczna, zwana dalej „Olimpiadą”, jest olimpiadą przedmiotową powołaną przez Instytut Informatyki Uniwersytetu Wrocławskiego 10 grudnia 1993 roku. Olimpiada działa zgodnie z rozporządzeniem Ministra Edukacji Narodowej i Sportu z dnia 29 stycznia 2002 roku w sprawie organizacji oraz sposobu przeprowadzania konkursów, turniejów i olimpiad (Dz. U. poz. 125, z późn. zm.). Organizatorem Olimpiady jest Fundacja Rozwoju Informatyki. W organizacji Olimpiady Fundacja Rozwoju Informatyki współdziała z Wydziałem Matematyki, Informatyki i Mechaniki Uniwersytetu Warszawskiego, Instytutem Informatyki Uniwersytetu Wrocławskiego, Katedrą Algorytmiki Uniwersytetu Jagiellońskiego, Wydziałem Matematyki i Informatyki Uniwersytetu im. Mikołaja Kopernika w Toruniu, Wydziałem Automatyki, Elektroniki i Informatyki Politechniki Śląskiej w Gliwicach, Wydziałem Informatyki Politechniki Poznańskiej, Wydziałem Informatyki Politechniki Białostockiej, Wydziałem Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej, Ośrodkiem Edukacji Informatycznej i Zastosowań Komputerów, a także z innymi środowiskami akademickimi, zawodowymi i oświatowymi działającymi w sprawach edukacji informatycznej.

§ 2. Organizacja Olimpiady

  1. Olimpiadę przeprowadza Komitet Główny Olimpiady Informatycznej, zwany dalej „Komitetem”.
  2. Zawody Olimpiady dzielą się na zawody I, II i III stopnia.
  3. W Olimpiadzie mogą brać indywidualnie udział uczniowie czteroletnich liceów ogólnokształcących, pięcioletnich techników, branżowej szkoły I stopnia i branżowej szkoły II stopnia oraz uczniowie klas dotychczasowych szkół ponadgimnazjalnych prowadzonych w szkołach ponadpodstawowych. W Olimpiadzie mogą również uczestniczyć uczniowie szkół podstawowych.
  4. Rozwiązaniem każdego z zadań zawodów I, II i III stopnia jest program (napisany w jednym z następujących języków programowania: C++ lub Python) lub plik z danymi.
  5. Zawody I stopnia mają charakter otwarty i polegają na samodzielnym rozwiązywaniu zadań i nadesłaniu rozwiązań w terminie i w miejscu wskazanym w § 4.
  6. Zawody II stopnia polegają na samodzielnym rozwiązywaniu zadań i nadesłaniu rozwiązań w miejscu wskazanym w § 5.
  7. Zawody III stopnia będą polegały na rozwiązywaniu zadań w warunkach kontrolowanej samodzielności albo na samodzielnym rozwiązywaniu zadań i nadesłaniu rozwiązań w miejscu wskazanym w § 6, w zależności od sytuacji epidemii. Wszyscy zakwalifikowani do zawodów III stopnia zostaną poinformowani o sposobie przeprowadzenia tych zawodów co najmniej miesiąc przed ich rozpoczęciem.
  8. Zawody II i III stopnia odbywają się w ciągu dwóch sesji, przeprowadzanych w różnych dniach.
  9. Do zawodów II stopnia zostanie zakwalifikowanych 500 Uczestników, których rozwiązania zadań I stopnia zostaną ocenione najwyżej. Do zawodów III stopnia zostanie zakwalifikowanych 150 Uczestników, których rozwiązania zadań II stopnia zostaną ocenione najwyżej. Spośród Uczestników zakwalifikowanych do zawodów III stopnia, 80 uzyska tytuł finalisty Olimpiady.
  10. Komitet może zmienić podane liczby Uczestników co najwyżej o 30%.
  11. Podjęte przez Komitet decyzje o zakwalifikowaniu Uczestników do zawodów kolejnego stopnia, zajętych miejscach i przyznanych nagrodach oraz składzie polskiej reprezentacji na Międzynarodową Olimpiadę Informatyczną i inne międzynarodowe zawody informatyczne są ostateczne.
  12. Komitet zastrzega sobie prawo do opublikowania rozwiązań Uczestników, którzy zostali zakwalifikowani do zawodów kolejnego stopnia lub zostali wyróżnieni lub otrzymali tytuł laureata
  13. Terminarz zawodów:
    1. zawody I stopnia – 19 października – 23 listopada 2020 roku;
    2. ogłoszenie wyników zawodów I stopnia w witrynie Olimpiady – 11 grudnia 2020 roku po godz. 20.00;
    3. zawody II stopnia – 16-18 lutego 2021 roku;
    4. ogłoszenie wyników zawodów II stopnia w witrynie Olimpiady – 26 lutego 2021 roku po godz. 20.00;
    5. zawody III stopnia13-16 kwietnia 2021 roku.

§ 3. Rozwiązania zadań

  1. Rozwiązanie każdego zadania, które polega na napisaniu programu, składa się z tylko jednego pliku źródłowego. Zaleca się, aby imię i nazwisko Uczestnika były podane w komentarzu na początku każdego rozwiązania.
  2. Nazwy plików z programami w postaci źródłowej muszą mieć następujące rozszerzenia zależne od użytego języka programowania:
    1. C++: cpp;
    2. Python: py.
  3. Szczegółowe informacje dotyczące implementacji, kompilacji i uruchamiania rozwiązań znajdują się w dokumencie Ustalenia techniczne, który stanowi załącznik do niniejszego dokumentu.
  4. Za każde zadanie można zdobyć od 0 do 100 punktów. Rozwiązania oceniane są automatycznie. Jeśli rozwiązaniem zadania jest program, wówczas:
    1. nadesłany program jest kompilowany (poza programami w języku Python) i uruchamiany na pewnej liczbie grup danych testowych; każda grupa składa się z jednego lub kilku testów;
    2. w przypadku, gdy wykonanie programu na danym teście nie zakończy się błędem oraz zmieści się w wyznaczonym limicie czasowym i pamięciowym, zostaje sprawdzona poprawność otrzymanej odpowiedzi;
    3. w przypadku poprawnej odpowiedzi – test jest zaliczany;
    4. za każdą grupę, w której zostały zaliczone wszystkie testy, program otrzymuje liczbę punktów zależną od liczby punktów przypisanych do danej grupy, od czasu działania programu oraz od ewentualnych warunków częściowej punktacji ustalonych w treści zadania.
  5. Jeśli rozwiązaniem zadania jest plik z danymi, wówczas ocenia się poprawność danych.
  6. Należy przyjąć, że dane testowe są bezbłędne i zgodne z podaną w treści zadania specyfikacją wejścia. Dane wyjściowe rozwiązania muszą być zgodne z podaną w treści zadania specyfikacją wyjścia. Jedynymi dopuszczalnymi odstępstwami w danych wyjściowych rozwiązania są białe znaki (spacja, znak tabulacji) na końcu wiersza oraz białe znaki (spacja, znak tabulacji, znak końca linii) na końcu pliku.
  7. Dane testowe oraz ostateczne wyniki sprawdzania są ujawniane po zakończeniu zawodów danego stopnia.
  8. Limity czasowe są wspólne dla wszystkich dopuszczonych języków programowania i są dobierane względem rozwiązań napisanych w języku C++. To oznacza, że niektóre rozwiązania napisane w języku Python mogą okazać się zbyt wolne ze względu na specyfikę tego języka i wskutek tego otrzymywać niższą punktację niż ich odpowiedniki w języku C++.
  9. Podczas oceniania skompilowane programy będą wykonywane w wirtualnym środowisku uruchomieniowym modelującym zachowanie procesora architektury x86, pod kontrolą systemu operacyjnego Linux. Ma to na celu uniezależnienie mierzonego czasu działania programu od modelu komputera, na którym odbywa się sprawdzanie. Daje także Uczestnikom możliwość wygodnego testowania efektywności działania programów w warunkach oceny. Przygotowane środowisko jest dostępne, wraz z opisem działania, w witrynie Olimpiady, na stronie Środowisko testowe w dziale „Dla uczestników” zarówno dla systemu Linux, jak i Windows.
  10. Każdy Uczestnik jest zobowiązany do zachowania w tajemnicy swoich rozwiązań w czasie trwania zawodów.
  11. Rozwiązania zespołowe, niesamodzielne, niezgodne z „Zasadami Organizacji Zawodów” lub takie, co do których nie można ustalić autorstwa, nie będą oceniane. W przypadku uznania przez Komitet pracy za niesamodzielną lub zespołową Uczestnicy mogą zostać zdyskwalifikowani.

§ 4. Zawody I stopnia

  1. Zawody I stopnia polegają na samodzielnym rozwiązywaniu podanych zadań (niekoniecznie wszystkich) i przesłaniu rozwiązań do Komitetu. Możliwe są tylko dwa sposoby przesyłania zadań:
    1. poprzez System Internetowy Olimpiady, zwany dalej SIO, o adresie http://sio2.mimuw.edu.pl, do 23 listopada 2020 roku do godz. 12.00 (południe). Komitet nie ponosi odpowiedzialności za brak możliwości przekazania rozwiązań przez Internet w sytuacji nadmiernego obciążenia lub awarii SIO. Odbiór przesyłki zostanie potwierdzony przez SIO zwrotnym listem elektronicznym, a Uczestnik przesyłający zadanie jest obowiązany do zachowania tego listu. Brak potwierdzenia może oznaczać, że rozwiązanie nie zostało poprawnie zarejestrowane. W tym przypadku Uczestnik powinien przesłać swoje rozwiązanie za pośrednictwem przesyłki pocztowej. Szczegóły dotyczące sposobu postępowania przy przekazywaniu rozwiązań i związanej z tym rejestracji będą dokładnie podane w SIO;
    2. jedną przesyłką pocztą poleconą, w sposób określony w ust. 2, na adres:
      Olimpiada Informatyczna
      Ośrodek Edukacji Informatycznej i Zastosowań Komputerów
      ul. Nowogrodzka 73,
      02–006 Warszawa,
      tel. 22 626 83 90,
      w nieprzekraczalnym terminie nadania do 23 listopada 2020 roku (decyduje data stempla pocztowego). Wysyłanie rozwiązań pocztą należy traktować jako opcję awaryjną, a ryzyko przekroczenia terminu nadania przesyłki ponosi Uczestnik. Uczestnik ma obowiązek zachować dowód nadania przesyłki do czasu otrzymania wyników oceny. Nawet w przypadku wysyłania rozwiązań przesyłką pocztową poleconą, każdy Uczestnik ma obowiązek założyć konto w SIO. Zarejestrowana nazwa użytkownika musi być zawarta w przesyłce.
  2. Uczestnik przesyłający zadanie przesyłką pocztową poleconą jest obowiązany do umieszczenia rozwiązania wybranych przez siebie zadań za pomocą specjalnego formularza w SIO. Następnie system SIO wygeneruje dokument, który należy wydrukować i wysłać na podany adres. Dopuszczalne jest także przesłanie rozwiązań w postaci plików źródłowych lub plików z danymi przesyłką pocztową poleconą na płycie CD/DVD lub pamięci USB. W przypadku braku możliwości odczytania nośnika z rozwiązaniami, nieodczytane rozwiązania nie będą brane pod uwagę.
  3. Rozwiązania dostarczane sposób inny niż określony w ust. 1 nie będą przyjmowane. W przypadku jednoczesnego zgłoszenia rozwiązania danego zadania przez SIO i przesyłką pocztową poleconą, ocenie podlega jedynie rozwiązanie wysłane przesyłką pocztową poleconą.
  4. W trakcie rozwiązywania zadań można korzystać z dowolnej literatury oraz ogólnodostępnych kodów źródłowych. Należy wówczas podać w rozwiązaniu, w komentarzu, odnośnik do wykorzystanej literatury lub kodu.
  5. Podczas korzystania z SIO Uczestnik postępuje zgodnie z instrukcjami umieszczonymi w tej witrynie. W szczególności, warunkiem koniecznym do kwalifikacji Uczestnika do dalszych etapów jest podanie lub aktualizacja w SIO wszystkich wymaganych danych osobowych.
  6. Każdy Uczestnik powinien założyć w SIO dokładnie jedno konto. Uczestnicy korzystający z więcej niż jednego konta mogą zostać zdyskwalifikowani.
  7. Rozwiązanie każdego zadania można zgłosić w SIO co najwyżej 25 razy. Spośród tych zgłoszeń oceniane jest jedynie najpóźniejsze poprawnie kompilujące się rozwiązanie. Po wyczerpaniu tego limitu kolejne rozwiązanie może zostać zgłoszone już tylko przesyłką pocztową poleconą. Rozwiązania, które nie skompilują się poprawnie, wliczają się do podanego limitu.
  8. Rozwiązania zgłoszone przez SIO zostaną skompilowane i sprawdzone na testach przykładowych opisanych w treści zadania, a wyniki tego sprawdzania zostaną udostępnione Uczestnikowi. Nie dotyczy to rozwiązań przesłanych za pomocą formularza do wysyłki przesyłką pocztową poleconą.
  9. W SIO jest możliwość wykonania uruchomienia próbnego swojego rozwiązania na przesłanym przez siebie teście. W tym przypadku SIO nie sprawdza jednak poprawności wejścia ani wyjścia. Uruchomienia próbne nie wliczają się do limitu zgłoszeń.
  10. W SIO znajdują się odpowiedzi na pytania Uczestników dotyczące Olimpiady. Ponieważ odpowiedzi mogą zawierać ważne informacje dotyczące toczących się zawodów, wszyscy Uczestnicy są proszeni o regularne zapoznawanie się z ukazującymi się odpowiedziami. Dalsze pytania należy przysyłać poprzez SIO. Komitet może nie udzielić odpowiedzi na pytanie z ważnych przyczyn, w szczególności gdy jest ono niejednoznaczne lub dotyczy sposobu rozwiązania zadania.
  11. W SIO znajduje się także dział Forum umożliwiający prowadzenie dyskusji między Uczestnikami. W dziale tym niedozwolona jest dyskusja na temat metod rozwiązania zadań zawodów I stopnia i złożoności obliczeniowych rozwiązań, pod rygorem dyskwalifikacji.
  12. Udostępnianie i wymiana testów dla zadań zawodów I stopnia może mieć miejsce tylko w dziale Forum. Niedozwolone jest korzystanie z cudzych serwisów sprawdzających rozwiązania tych zadań.
  13. Od piątku 4 grudnia 2020 roku poprzez SIO każdy Uczestnik będzie mógł zapoznać się ze wstępną oceną swojej pracy.
  14. Do środy 9 grudnia 2020 roku (włącznie) poprzez SIO każdy Uczestnik będzie mógł zgłaszać uwagi do wstępnej oceny swoich rozwiązań.
  15. Reklamacji nie podlega dobór testów, limitów czasowych, kompilatorów i sposobu oceny.
  16. Reklamacje złożone po 9 grudnia 2020 roku nie będą rozpatrywane.

§ 5. Zawody II stopnia

  1. Zawody II stopnia polegają na samodzielnym rozwiązywaniu zadań w ciągu dwóch pięciogodzinnych sesji odbywających się w różnych dniach.
  2. Rozwiązywanie zadań konkursowych poprzedzone jest trzygodzinną sesją próbną umożliwiającą Uczestnikom zapoznanie się z warunkami organizacyjnymi i technicznymi Olimpiady. Wyniki sesji próbnej nie są liczone do klasyfikacji.
  3. Zawody II stopnia są przeprowadzane zdalnie za pomocą SIO.
  4. Wszystkie rozwiązania należy zgłosić w SIO albo za pomocą lokalnej aplikacji OI, dostarczonej przez organizatorów. Komitet nie ponosi odpowiedzialności za brak możliwości przekazania rozwiązań przez Internet w sytuacji nadmiernego obciążenia lub awarii SIO.
  5. Do zawodów II stopnia mają zastosowanie ust. 4, 5, 6, 8, 9, 10, 15 z § 4.
  6. Rozwiązanie każdego zadania można zgłosić w SIO co najwyżej 15 razy. Spośród tych zgłoszeń oceniane jest jedynie najpóźniejsze poprawnie kompilujące się rozwiązanie. Rozwiązania, które nie skompilują się poprawnie, wliczają się do podanego limitu.
  7. Po zakończeniu zawodów II stopnia, od czwartku 18 lutego 2021 roku od godz. 20.00 do wtorku 23 lutego 2021 roku do godz. 24.00 poprzez SIO każdy Uczestnik będzie mógł zapoznać się z pełną oceną swoich rozwiązań i składać reklamacje.

§ 6. Zawody III stopnia

  1. Zawody III stopnia polegają na samodzielnym rozwiązywaniu zadań w ciągu dwóch pięciogodzinnych sesji odbywających się w różnych dniach.
  2. Rozwiązywanie zadań konkursowych poprzedzone jest trzygodzinną sesją próbną umożliwiającą Uczestnikom zapoznanie się z warunkami organizacyjnymi i technicznymi Olimpiady. Wyniki sesji próbnej nie są liczone do klasyfikacji.
  3. Jeśli zawody III stopnia zostaną przeprowadzone w warunkach kontrolowanej samodzielności, to tryb ich przeprowadzenia będzie zgodny z Zasadami organizacji zawodów II i III stopnia, które stanowią załącznik do niniejszego dokumentu. Jeśli zawody III stopnia zostaną przeprowadzone zdalnie za pomocą SIO, to tryb ich przeprowadzenia będzie określony przez ust. 3, 4 i 5 z § 5.
  4. Rozwiązanie każdego zadania można zgłosić co najwyżej 15 razy. Uczestnicy będą mogli poznać wynik punktowy swoich zgłoszeń zaraz po tym, jak ich programy zostaną ocenione przez system. Opcja ta może nie być dostępna w przypadku dużego obciążenia systemu, w szczególności pod sam koniec zawodów. Wynikiem Uczestnika dla każdego zadania jest najwyższy z wyników punktowych jego zgłoszeń dla tego zadania.
  5. Każdego dnia zawodów, po około dwóch godzinach od zakończenia sesji, Uczestnikom zostaną udostępnione raporty oceny ich prac na wybranym zestawie testów. Po otrzymaniu raportów Uczestnicy mają godzinę na zgłaszanie reklamacji.

§ 7. Uprawnienia i nagrody

  1. Każdy Uczestnik, który został zakwalifikowany do zawodów III stopnia, zostaje finalistą Olimpiady. Laureatem Olimpiady zostaje uczestnik zawodów III stopnia sklasyfikowany w pierwszej połowie uczestników tych zawodów, którego dokonania Komitet uzna za zdecydowanie wyróżniające się wśród wyników finalistów. Laureaci dzielą się na laureatów I, II i III miejsca. W przypadku bardzo wysokiego poziomu zawodów III stopnia Komitet może dodatkowo wyróżnić uczestników niebędących laureatami.
  2. Zgodnie z art. 44j ustawy z dnia 7 września 1991 r. o systemie oświaty (Dz.U. z 2018 r. poz. 2245, z późn. zm.), laureaci i finaliści Olimpiady otrzymują z danych zajęć edukacyjnych najwyższą roczną ocenę klasyfikacyjną. Uczeń, który tytuł laureata lub finalisty Olimpiady uzyskał po ustaleniu rocznej oceny klasyfikacyjnej z zajęć edukacyjnych, otrzymuje z tych zajęć edukacyjnych najwyższą końcową ocenę klasyfikacyjną.
  3. Zgodnie z art. 44zzh ustawy z dnia 7 września 1991 r. o systemie oświaty (Dz.U. z 2019 r. poz. 1481, z późn. zm.) oraz „Komunikatem Ministra Edukacji Narodowej z 23 lipca 2019 w sprawie wykazu olimpiad przedmiotowych przeprowadzanych z przedmiotu lub przedmiotów objętych egzaminem ósmoklasisty lub egzaminem maturalnym w roku szkolnym 2020/2021 oraz uprawniających do przyjmowania laureatów i finalistów tych olimpiad w pierwszej kolejności do szkół wymienionych w art. 132 ustawy – Prawo oświatowe”, laureaci i finaliści Olimpiady są zwolnieni z egzaminu maturalnego z informatyki. Uprawnienie to przysługuje także wtedy, gdy przedmiot nie jest objęty szkolnym planem nauczania danej szkoły.
  4. Laureaci i finaliści Olimpiady mają ułatwiony lub wolny wstęp do tych szkół wyższych, których senaty podjęły uchwały w tej sprawie, zgodnie z przepisami ustawy z dnia 20 lipca 2018 r. - Prawo o szkolnictwie wyższym i nauce (Dz. U. poz. 1668, z późn. zm.), na zasadach zawartych w tych uchwałach.
  5. Zaświadczenia o uzyskanych uprawnieniach wydaje Uczestnikom Komitet.
  6. Komitet ustala skład reprezentacji Polski na XXXIII Międzynarodową Olimpiadę Informatyczną, XXVIII Olimpiadę Informatyczną Krajów Europy Środkowej, XXVII Bałtycką Olimpiadę Informatyczną w 2021 roku oraz inne zawody międzynarodowe na podstawie wyników Olimpiady oraz regulaminów tych zawodów.
  7. Komitet może nagrodzić opiekunów, których praca przy przygotowaniu Uczestnika Olimpiady zostanie oceniona przez ten Komitet jako wyróżniająca.
  8. Wyznaczeni przez Komitet reprezentanci Polski na olimpiady międzynarodowe zostaną zaproszeni do nieodpłatnego udziału w XXII Obozie Naukowo–Treningowym im. Antoniego Kreczmara, zwanym dalej „Obozem”, który odbędzie się w czasie wakacji 2021 roku. Do nieodpłatnego udziału w Obozie Komitet może zaprosić także innych finalistów, którzy nie są w ostatniej programowo klasie swojej szkoły, w zależności od uzyskanych wyników.
  9. Komitet może przyznawać finalistom i laureatom nagrody, a także stypendia ufundowane z funduszy Olimpiady lub przez osoby prawne lub fizyczne.

§ 8. Przepisy końcowe

  1. Komitet zawiadamia wszystkich uczestników zawodów I i II stopnia o ich wynikach poprzez SIO. Wszyscy uczestnicy zawodów I stopnia będą mogli zapoznać się ze szczegółowym raportem ze sprawdzania ich rozwiązań.
  2. O zakwalifikowaniu ucznia do zawodów II i III stopnia Komitet zawiadamia ucznia oraz dyrektora szkoły, do której uczeń uczęszcza, podając jednocześnie miejsce i termin zawodów.
  3. Uczniowie zakwalifikowani do udziału w zawodach II i III stopnia są zwolnieni z zajęć szkolnych na czas niezbędny do udziału w zawodach; w przypadku organizacji tych zawodów w warunkach kontrolowanej samodzielności mają także zagwarantowane na czas tych zawodów bezpłatne zakwaterowanie, wyżywienie i zwrot kosztów przejazdu.

Witryna Olimpiady: https://oi.edu.pl