Zasady organizacji zawodów XXVI Olimpiady Informatycznej w roku szkolnym 2018/2019

§ 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 29 stycznia 2002 roku w sprawie organizacji oraz sposobu przeprowadzania konkursów, turniejów i olimpiad (Dz. U. 2002, nr 13, 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, Instytutem Informatyki Wydziału Automatyki, Elektroniki i Informatyki Politechniki Śląskiej w Gliwicach, Wydziałem Informatyki Politechniki Poznań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 Głównym.
  2. Olimpiada Informatyczna jest trójstopniowa.
  3. W Olimpiadzie Informatycznej mogą brać indywidualnie udział uczniowie wszystkich typów szkół ponadgimnazjalnych. W Olimpiadzie mogą również uczestniczyć – za zgodą Komitetu Głównego – uczniowie szkół podstawowych i gimnazjów.
  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 podanym terminie i we wskazane miejsce.
  6. Zawody II i III stopnia polegają na rozwiązywaniu zadań w warunkach kontrolowanej samodzielności. Zawody te odbywają się w ciągu dwóch sesji, przeprowadzanych w różnych dniach.
  7. Do zawodów II stopnia zostanie zakwalifikowanych 300 uczestników, których rozwiązania zadań I stopnia zostaną ocenione najwyżej. Do zawodów III stopnia zostanie zakwalifikowanych 80 uczestników, których rozwiązania zadań II stopnia zostaną ocenione najwyżej.
  8. Komitet Główny może zmienić podane liczby zakwalifikowanych uczestników co najwyżej o 30%.
  9. Podjęte przez Komitet Główny 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.
  10. Komitet Główny zastrzega sobie prawo do opublikowania rozwiązań zawodników, którzy zostali zakwalifikowani do następnego etapu, zostali wyróżnieni lub otrzymali tytuł laureata.
  11. Terminarz zawodów:

    zawody I stopnia – 8 października – 13 listopada 2018 roku
    ogłoszenie wyników w witrynie Olimpiady – 30 listopada 2018 roku po godz. 20.00
    zawody II stopnia – 12–14 lutego 2019 roku
    ogłoszenie wyników w witrynie Olimpiady – 22 lutego 2019 roku po godz. 20.00
    zawody III stopnia – 9-12 kwietnia 2019 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:
    C++: cpp
    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.
    Jeśli rozwiązaniem zadania jest plik z danymi, wówczas ocenia się poprawność danych.
  5. 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.
  6. Dane testowe oraz ostateczne wyniki sprawdzania są ujawniane po zakończeniu zawodów danego stopnia.
  7. 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.
  8. Podczas oceniania skompilowane programy będą wykonywane w wirtualnym środowisku uruchomieniowym modelującym zachowanie 32–bitowego 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 zawodnikom 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 zawodników” (zarówno dla systemu Linux, jak i Windows).
  9. Każdy zawodnik jest zobowiązany do zachowania w tajemnicy swoich rozwiązań w czasie trwania zawodów.
  10. 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 Główny pracy za niesamodzielną lub zespołową zawodnicy 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 Głównego. Możliwe są tylko dwa sposoby przesyłania:
    • poprzez System Internetowy Olimpiady, zwany dalej SIO, o adresie http://sio2.mimuw.edu.pl, do 13 listopada 2018 roku do godz. 12.00 (południe). Komitet Główny 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 (prosimy o zachowanie tego listu). Brak potwierdzenia może oznaczać, że rozwiązanie nie zostało poprawnie zarejestrowane. W tym przypadku zawodnik powinien przesłać swoje rozwiązanie za pośrednictwem zwykłej poczty. Szczegóły dotyczące sposobu postępowania przy przekazywaniu rozwiązań i związanej z tym rejestracji będą dokładnie podane w SIO.
    • pocztą, jedną przesyłką poleconą, 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 13 listopada 2018 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ń pocztą, każdy uczestnik musi założyć konto w SIO. Zarejestrowana nazwa użytkownika musi być zawarta w przesyłce.

  2. Uczestnik korzystający z poczty zwykłej powinien umieścić 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ń (tj. plików źródłowych lub plików z danymi) pocztą 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 w inny sposób nie będą przyjmowane. W przypadku jednoczesnego zgłoszenia rozwiązania danego zadania przez SIO i listem poleconym, ocenie podlega jedynie rozwiązanie wysłane listem poleconym.
  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 zawodnik postępuje zgodnie z instrukcjami umieszczonymi w tej witrynie. W szczególności, warunkiem koniecznym do kwalifikacji zawodnika 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. Zawodnicy 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 zwykłą pocztą. Zauważ, że 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 zawodnikowi. Nie dotyczy to rozwiązań przesłanych za pomocą formularza do wysyłki pocztą zwykłą.
  9. Do 13 listopada 2018 do godz. 12.00 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 zawodników dotyczące Olimpiady. Ponieważ odpowiedzi mogą zawierać ważne informacje dotyczące toczących się zawodów, wszyscy zawodnicy są proszeni o regularne zapoznawanie się z ukazującymi się odpowiedziami. Dalsze pytania należy przysyłać poprzez SIO. Komitet Główny może nie udzielić odpowiedzi na pytanie z ważnych przyczyn, m.in. 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 zawodnikami. 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 23 listopada 2018 roku poprzez SIO każdy zawodnik będzie mógł zapoznać się ze wstępną oceną swojej pracy.
  14. Do środy 28 listopada 2018 roku (włącznie) poprzez SIO każdy zawodnik będzie mógł zgłaszać uwagi do wstępnej oceny swoich rozwiązań. Reklamacji nie podlega jednak dobór testów, limitów czasowych, kompilatorów i sposobu oceny.
  15. Reklamacje złożone po 28 listopada 2018 roku nie będą rozpatrywane.

§ 5. Zawody II i III stopnia

  1. Zawody II i 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. W czasie rozwiązywania zadań konkursowych każdy uczestnik ma do swojej dyspozycji komputer z systemem Linux. Zawodnikom wolno korzystać wyłącznie ze sprzętu i oprogramowania dostarczonego przez organizatora.
  4. Zawody II i III stopnia są przeprowadzane za pomocą SIO.
  5. W czasie trwania zawodów uczestnicy nie mogą korzystać z żadnych książek ani innych pomocy takich jak: dyski, kalkulatory, notatki itp. Nie wolno mieć w tym czasie telefonu komórkowego ani innych własnych urządzeń elektronicznych.
  6. Tryb przeprowadzenia zawodów II i III stopnia jest opisany szczegółowo w Zasadach organizacji zawodów II i III stopnia, które stanowią załącznik do niniejszego dokumentu.

§ 6. Uprawnienia i nagrody

  1. Każdy zawodnik, 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 Główny 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 Główny może dodatkowo wyróżnić uczestników niebędących laureatami.
  2. Laureaci i finaliści Olimpiady otrzymują z informatyki lub technologii informacyjnej celującą roczną (semestralną) ocenę klasyfikacyjną.
  3. Laureaci i finaliści Olimpiady są zwolnieni z egzaminu maturalnego z informatyki. Uprawnienie to przysługuje także wtedy, gdy przedmiot nie był objęty szkolnym planem nauczania danej szkoły.
  4. Uprawnienia określone w punktach 1. i 2. przysługują na zasadach określonych w rozporządzeniu MEN z 30 kwietnia 2007 roku w sprawie warunków i sposobu oceniania, klasyfikowania i promowania uczniów i słuchaczy oraz przeprowadzania sprawdzianów i egzaminów w szkołach publicznych (Dz. U. 2007, nr 83, poz. 562, §§ 20 i 60).
  5. 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 27 lipca 2005 roku „Prawo o szkolnictwie wyższym”, na zasadach zawartych w tych uchwałach (Dz. U. 2005, nr 164, poz. 1365).
  6. Zaświadczenia o uzyskanych uprawnieniach wydaje uczestnikom Komitet Główny.
  7. Komitet Główny ustala skład reprezentacji Polski na XXXI Międzynarodową Olimpiadę Informatyczną w 2019 roku oraz inne zawody międzynarodowe na podstawie wyników Olimpiady oraz regulaminów Międzynarodowej Olimpiady i tych zawodów.
  8. Komitet Główny może nagrodzić opiekunów, których praca przy przygotowaniu uczestnika Olimpiady zostanie oceniona przez ten Komitet jako wyróżniająca.
  9. Wyznaczeni przez Komitet Główny reprezentanci Polski na olimpiady międzynarodowe zostaną zaproszeni do nieodpłatnego udziału w XX Obozie Naukowo–Treningowym im. Antoniego Kreczmara, który odbędzie się w czasie wakacji 2019 roku. Do nieodpłatnego udziału w Obozie Komitet Główny 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.
  10. Komitet Główny może przyznawać finalistom i laureatom nagrody, a także stypendia ufundowane z funduszy Olimpiady lub przez osoby prawne lub fizyczne.

§ 7. Przepisy końcowe

  1. Komitet Główny 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. Każdy uczestnik, który zakwalifikował się do zawodów wyższego stopnia, oraz dyrektor jego szkoły otrzymują informację o miejscu i terminie następnego stopnia 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; mają także zagwarantowane na czas tych zawodów bezpłatne zakwaterowanie, wyżywienie i zwrot kosztów przejazdu.

Witryna Olimpiady: www.oi.edu.pl