Zasady organizacji zawodów

Zasady organizacji zawodów XIV Olimpiady Informatycznej Juniorów w roku szkolnym 2019/2020

§ 1. Wstęp

Olimpiada Informatyczna Juniorów, zwana dalej Olimpiadą, jest olimpiadą przedmiotową, która 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 od 2019 roku jest Fundacja Rozwoju Informatyki.

§ 2. Organizacja Olimpiady

  1. Olimpiadę przeprowadza Komitet Główny Olimpiady Informatycznej Juniorów, zwany dalej Komitetem Głównym.
  2. Olimpiada jest trójstopniowa.
  3. W Olimpiadzie Informatycznej Juniorów mogą brać indywidualnie udział tylko uczniowie szkół podstawowych. Pytania i zadania konkursowe należy rozwiązywać samodzielnie i swoich rozwiązań nie należy udostępniać innym uczniom. Uczniowie, którzy nie przestrzegają tych zasad i zasad fair play mogą zostać zdyskwalifikowani.
  4. Zawody I stopnia składają się z trzech tur. Pierwsza tura (testowa) zawodów I stopnia polega na rozwiązaniu testu, a kolejne dwie (otwarta i ukryta) polega na samodzielnym rozwiązaniu zadań i nadesłaniu rozwiązań w podanym terminie w serwisie olimpiady. Wynikiem zawodów I stopnia jest suma punktów uzyskanych w tych trzech turach.
  5. Zawody II i III stopnia polegają na rozwiązywaniu zadań w warunkach kontrolowanej samodzielności. Zawody odbywają się w ciągu jednej sesji w określonym dniu.
  6. Do zawodów II stopnia zostanie zakwalifikowanych co najmniej 25% uczestników zawodów I stopnia, którzy uzyskają największą liczbę punktów w zawodach I stopnia, przy czym liczba zakwalifikowanych uczestników wyniesie co najmniej 150. Dodatkowo przyjmujemy zasadę, że z każdego województwa ma być zakwalifikowanych przynajmniej trzech uczestników, którzy uzyskają największą liczbę punktów w zawodach I stopnia, jeśli otrzymali przynajmniej 30% łącznego maksymalnego wyniku.
  7. Do zawodów III stopnia zostanie zakwalifikowanych 80 uczestników, których rozwiązania zadań II stopnia zostaną ocenione najwyżej. Komitet Główny może zwiększyć bądź zmniejszyć tę liczbę o co najwyżej 30 %.
  8. 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 Europejską Olimpiadę Informatyczną Juniorów i inne międzynarodowe zawody informatyczne są ostateczne.
  9. Komitet Główny zastrzega sobie prawo do opublikowania rozwiązań uczestników, którzy zostali zakwalifikowani do zawodów kolejnego stopnia, zostali wyróżnieni lub otrzymali tytuł laureata.
  10. Terminarz zawodów:
  • Zawody I stopnia
    • tura testowa: 16 września 2019 r. – 13 stycznia 2020 r.
    • tura otwarta: 30 września 2019 r. – 16 grudnia 2019 r.
    • tura ukryta: 26 października 2019 r. – 13 stycznia 2020 r.
    Godzina rozpoczęcia każdej z tur: 00:00:00; godzina zakończenia: 23:59:59.
  • Zawody II stopnia – 14 marca 2020 r.
  • Zawody III stopnia – 15-16 maja 2020 r.

§ 3. Rozwiązania zadań w otwartej i ukrytej turze zawodów I stopnia i w zawodach II i III stopnia

  1. Rozwiązanie każdego zadania polega na napisaniu programu, który składa się z jednego pliku źródłowego.
  2. Nazwy plików z programami w postaci źródłowej powinny mieć następujące rozszerzenia zależne od użytego języka programowania:
  • py dla języka Python,
  • cpp lub cc dla języka C++.
  1. 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.
  2. Za każde zadanie programistyczne można zdobyć od 0 do 100 punktów. Rozwiązania są oceniane automatycznie.
  3. Nadesłany program jest kompilowany i uruchamiany na pewnej liczbie grup danych testowych; każda grupa składa się z pewnej liczby testów,
  4. Gdy wykonanie programu na danym teście nie zakończy się błędem wykonania oraz zmieści się w wyznaczonym limicie czasowym i pamięciowym, to zostaje sprawdzona poprawność otrzymanej odpowiedzi – test jest zaliczany, jeśli odpowiedź jest poprawna,
  5. 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 oraz od czasu działania programu.
  6. W niektórych zadaniach jest możliwe otrzymanie części punktów za dany test, jeżeli tylko część rozwiązania jest poprawna; warunki takiej punktacji są określone w treści takiego zadania, a wynik za całą grupę testów jest najmniejszą liczbą punktów uzyskanych za testy w tej grupie.
  7. Należy przyjąć, że dane testowe są bezbłędne i zgodne z podaną w treści zadania specyfikacją wejścia. Postać rozwiązań musi być zgodna 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.
  8. Dane testowe, programy oceniające, wzorcowe rozwiązania oraz ostateczne wyniki sprawdzania są ujawniane po zakończeniu zawodów danego stopnia.
  9. W witrynie Olimpiady, na stronie “Jak testujemy Twoje programy” w dziale „Dla zawodnika” zostało przygotowane środowisko testowe, które umożliwia uczestnikom wygodne testowanie poprawności i efektywności działania programów w warunkach, w których będą oceniane.
  10. Każdy zawodnik 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 Główny pracy za niesamodzielną lub zespołową zawodnicy mogą zostać zdyskwalifikowani.

§ 4 Zawody I stopnia

  1. Zawody pierwszego stopnia składają się z trzech tur.
  2. Tura testowa polega na rozwiązaniu testu składającego się z 30 pytań.
  3. Pytania dotyczą podstaw programowania w jednym z języków programowania (C++ lub Python) oraz podstawowych zagadnień algorytmicznych.
  4. Zawodnik może wybrać czy rozwiązuje test w wersji dla C++, czy w wersji dla Pythona. Wybór języka podczas testu nie zobowiązuje do dalszego stosowania go w zawodach.
  5. Pytania są wybierane losowo dla każdego zawodnika z puli ok. 450 pytań. Wszystkie pytania są udostępnione uczestnikom na okres trwania tury testowej zawodów I stopnia.
  6. Celem pytań testowych jest pomoc w rozwijaniu umiejętności programowania.
  7. Pytania są dwojakiego typu:
  • pytania otwarte, na które zawodnik musi sam udzielić odpowiedzi,
  • pytania zamknięte wielokrotnego wyboru, w których zawodnik wybiera spośród dostępnych odpowiedzi.
  1. Pytanie zostaje uznane za rozwiązane, jeśli odpowiedź jest poprawna (w przypadku pytań otwartych), bądź zaznaczone są wszystkie odpowiedzi poprawne i żadna niepoprawna (w przypadku pytań zamkniętych). Za poprawne rozwiązanie każdego pytania można otrzymać 10 punktów.
  2. Do rozwiązywania testu można podejść dwa razy – uczestnikowi jest zaliczany jego lepszy rezultat. Test można rozwiązywać w dowolnym terminie między datami podanymi w terminarzu zawodów. Zawodnik może także próbnie rozwiązywać dany test. Wynik takiego próbnego testu nie jest liczony w żaden sposób do oceny. Nie ma limitu próbnych uruchomień testu.
  3. Tury otwarta i ukryta zawodów I stopnia polegają na samodzielnym rozwiązaniu 4-6 zadań w każdej z tych tur poprzez na napisanie programu rozwiązującego podany w zadaniu problem. Za rozwiązanie każdego zadania w tych turach uczestnik może otrzymać maksymalnie 100 punktów.
  4. Rozwiązania zadań (niekoniecznie wszystkich) z tury otwartej i ukrytej zawodów I stopnia należy przesłać do Komitetu Głównego. Rozwiązania należy wysłać poprzez System Internetowy Olimpiady, zwany dalej SIO2, o adresie https://sio2.mimuw.edu.pl, w terminach podanych w terminarzu zawodów, do godz. 23:59:59 podanego dnia. Komitet Główny nie ponosi odpowiedzialności za brak możliwości przekazania rozwiązań w sytuacji nadmiernego obciążenia lub awarii SIO2. Odbiór przesyłki zostanie potwierdzony przez SIO2 zwrotnym listem elektronicznym (prosimy o zachowanie tego listu). Brak potwierdzenia może oznaczać, że rozwiązanie nie zostało poprawnie zarejestrowane. Należy przesyłać rozwiązania pojedynczych zadań możliwie wcześniej niż w terminie ostatecznym. Do każdego zadania można dokonać co najwyżej 25 zgłoszeń.
  5. 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.
  6. Podczas korzystania z SIO uczestnik zawodów postępuje zgodnie z instrukcjami umieszczonymi w tej witrynie. W szczególności, warunkiem koniecznym do kwalifikacji zawodnika do zawodów kolejnego stopnia jest podanie lub aktualizacja w SIO wszystkich wymaganych danych osobowych.
  7. Udział w zawodach wymaga zgody uczestnika Olimpiady i jego prawnych opiekunów na przetwarzanie danych osobowych w stopniu szczegółowo opisanym w Regulaminie Olimpiady (paragraf 4, punkt 6, podpunkty 6-8) oraz w Klauzuli informacyjnej. W przypadku braku ww. zgód prace ucznia nie są brane pod uwagę i w konsekwencji uczeń ten nie będzie podlegał kwalifikacji do zawodów kolejnych stopni.
  8. 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.
  9. Rozwiązanie każdego zadania można zgłosić w SIO co najwyżej 25 razy. Należy pamiętać, że rozwiązania, które nie skompilują się poprawnie, wliczają się do podanego limitu.
  10. Podczas otwartej tury zawodów I stopnia uczestnicy mogą dla każdego zadania sprawdzić (odsłonić) wynik punktowy wybranych 10 swoich zgłoszeń.
  11. Wynikiem zadania podczas otwartej i ukrytej tury zawodów I stopnia jest maksimum z wyników uzyskanych przez wszystkie zgłoszenia do tego zadania.
  12. Wynikiem zawodów I stopnia jest suma punktów uzyskanych w tych trzech turach.
  13. Rozwiązania zgłoszone do SIO2 zostaną skompilowane i sprawdzone na testach przykładowych opisanych w treści zadania, a wyniki tego sprawdzania zostaną udostępnione uczestnikowi zawodów.
  14. Dodatkowo można próbnie uruchomić swoje 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ń, jednak każde zadanie ma osobny limit 25 uruchomień próbnych.
  15. 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 również przesył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.
  16. 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ązywania zadań zawodów I stopnia i efektywności rozwiązań, pod rygorem dyskwalifikacji.
  17. Od piątku 24 stycznia 2020 roku poprzez SIO każdy zawodnik będzie mógł zapoznać się ze wstępną oceną swoich rozwiązań.
  18. Do środy 29 stycznia 2020 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.
  19. Reklamacje złożone po 29 stycznia 2020 roku nie będą rozpatrywane.

§ 5. Zawody II i III stopnia

  1. Zawody II i III stopnia polegają na samodzielnym rozwiązywaniu 2-4 zadań w ciągu jednej czterogodzinnej sesji.
  2. Rozwiązywanie zadań konkursowych poprzedzone jest godzinną sesją próbną umożliwiającą uczestnikom zapoznanie się z warunkami organizacyjnymi i technicznymi Olimpiady. Wyniki sesji próbnej nie są wliczane do klasyfikacji.
  3. W czasie rozwiązywania zadań konkursowych 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 przy sobie telefonu komórkowego ani innych własnych urządzeń elektronicznych.
  6. Tryb przeprowadzenia zawodów II i III stopnia jest szczegółowo opisany w Zasadach organizacji zawodów II i III stopnia, które zostaną udostępnione przed zawodami II stopnia.

§ 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ą celującą roczną (semestralną) ocenę klasyfikacyjną z informatyki.
  3. Laureaci i finaliści Olimpiady są przyjmowani do wybranych szkół ponad podstawowych w całym kraju poza zwykłym postępowaniem kwalifikacyjnym.
  4. Uprawnienia określone w punktach 2. i 3. przysługują na zasadach określonych w Ustawie o systemie oświaty.
  5. Komitet Główny Olimpiady wydaje uczestnikom zaświadczenia o uzyskanych uprawnieniach.
  6. Komitet Główny ustala skład reprezentacji Polski na Europejska Olimpiadę Informatyczną Juniorów w 2020 roku oraz ewentualnie inne zawody międzynarodowe na podstawie wyników Olimpiady, obozu treningowego oraz regulaminów Europejskiej Olimpiady i tych zawodów.
  7. Komitet Główny może nagrodzić opiekunów, których praca przy przygotowaniu uczestnika Olimpiady zostanie oceniona przez Komitet jako wyróżniająca.
  8. Wyznaczeni przez Komitet Główny reprezentanci Polski na zawody międzynarodowe zostaną zaproszeni do nieodpłatnego udziału w Obozie Naukowo-Treningowym, który odbędzie się w czasie wakacji 2020 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 przez nich wyników.
  9. Komitet Główny może przyznać 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, II i III stopnia o ich wynikach poprzez SIO. Wszyscy uczestnicy zawodów mogli zapoznać się ze szczegółowym raportem ze sprawdzania ich rozwiązań po zakończeniu zawodów danego stopnia.
  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 przeprowadzania zawodów następnego stopnia.
  3. Uczniowie zakwalifikowani do udziału w zawodach II i III stopnia są zwalniani 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: https://oij.edu.pl