Dla zawodnika

Jak wystartować w OIJ?

Zarejestruj się do zawodów – musi to zrobić zarówno szkoła, jak i zawodnik. Szczegółową instrukcję możesz znaleźć na stronie Rejestracja. Jeśli potrzebujesz podciągnąć się w umiejętności programowania (w tym rozpocząć naukę programowania), zapoznaj się z proponowanymi przez nas Kursami. Zawody I stopnia OIJ składają się z zadań programistycznych do samodzielnego rozwiązania oraz z testu, który odbędzie się w szkołach. Zadania programistyczne pojawią się w Systemie Internetowym Olimpiady (SIO) 30 września 2024, zadań będzie 6. czytaj dalej

Dlaczego warto?

Laureatom i finalistom Olimpiady Informatycznej Juniorów przysługuje wolny wstęp do szkół ponadpodstawowych i ocena celująca z informatyki - szczegółowa lista uprawnień jest dostępna w Zasadach organizacji zawodów. Najlepsi olimpijczycy reprezentują Polskę na międzynarodowych zawodach informatycznych (z licznymi sukcesami) i mają zapewniony udział w olimpijskich obozach treningowych. Większość zawodników bierze udział w Olimpiadzie głównie dlatego, że zadania olimpijskie są ciekawe, wyzywające intelektualnie, a zaprogramowanie rozwiązań sprawia dużo przyjemności i daje sporą satysfakcję. czytaj dalej

Przewodnik po OIJ

Niniejszy dokument stanowi streszczenie Zasad organizacji zawodów. Zawodników zainteresowanych dalszym zgłębieniem zasad odsyłamy do tego dokumentu. Udział w OIJ W Olimpiadzie Informatycznej Juniorów mogą uczestniczyć wszyscy uczniowie szkół podstawowych. Konkurs jest indywidualny, tj. każdy sam startuje w zawodach. Rejestracja na zawody odbywa się poprzez System Informatyczny Olimpiady, zwany dalej SIO2, dostępny pod adresem https://sio2.mimuw.edu.pl/. Pamiętaj, że każdy może mieć tylko jedno konto w systemie oraz musisz podać tam prawdziwe dane. W przeciwnym wypadku możesz zostać zdyskwalifikowana/y. czytaj dalej

Rozwiązywanie i wysyłanie zadań

W tej sekcji przedstawiamy kilka prostych zadań razem z rozwiązaniami w C++ oraz Pythonie. Przytoczone zadania można wysyłać w Systemie Informatycznym Olimpiady (SIO2). Spółgłoski i samogłoski (opracowanie w C++, opracowanie w Pythonie) Prostokąt (opracowanie w C++, opracowanie w Pythonie) Igrzyska (opracowanie w C++, opracowanie w Pythonie) Kwadrat (przykładowe rozwiązania) Odwrotność (przykładowe rozwiązania) Liczby Fibonacciego Zadanie Liczby Fibonacciego zostało drobiazgowo opisane w Samouczku, który przedstawia różne zagadnienia związane z rozwiązywaniem i wysyłaniem zadań. czytaj dalej

Nauka programowania i algorytmiki

Poniżej załączamy odnośniki do rekomendowanych kursów programowania, gdzie można nabyć podstawowe umiejętności potrzebne w Olimpiadzie. Wprowadzenie do programowania w C++ Wyczerpujący przewodnik, który krok po kroku wprowadza wszystkie podstawowe konstrukcje języka, które potrzebne są do startu w Olimpiadzie. Kurs wstępu do programowania w C++ Ten kurs zawiera wstęp do programowania w języku C++, jednakże nie jest to zwykły techniczny kurs danego języka, ale kurs programowania wykorzystujący nowoczesny język C++. czytaj dalej

Jak testujemy Twoje programy?

Skompilowane programy uruchamiane są podczas oceny w specjalnym wirtualnym środowisku, które umożliwia precyzyjny i deterministyczny pomiar czasu ich działania. Dzięki temu: mamy pewność, że na zmierzony czas nie wpływają inne programy działające na komputerze sprawdzającym czy też operacje takie jak dostępy do dysku, publikując oprogramowanie obsługujące to środowisko, dajemy Wam możliwość uruchomienia swoich programów w takich samych warunkach, jak przy ocenie końcowej, możemy wykorzystywać do sprawdzania komputery wieloprocesorowe i techniki wirtualizacji bez obawy o wpływ innych uruchomionych aplikacji na wyniki oceny. czytaj dalej

Wprowadzenie do Linuksa

Mamy świadomość, że II etap Olimpiady dla części z Was może być jednym z pierwszych kontaktów z Linuksem. Z myślą o tych osobach powstał ten krótki podręcznik, który mamy nadzieję pomoże Wam odnaleźć się w tym środowisku. Przygotowaliśmy także krótki tutorial wideo, dostępny pod adresem https://www.youtube.com/watch?v=LIESFnJ_PI4, pokazujący wszystkie przydatne komendy (także opisane poniżej), dostępne w środowisku. Zapraszamy do obejrzenia go przed zawodami. Specyfikacja środowiska dostępna jest w dokumencie Wybrane polecenia. czytaj dalej

Literatura

Dla początkujących M. Erwig, Dawno temu był sobie algorytm, Wydawnictwo Naukowe PWN, Warszawa 2018. J. Tomasiewicz, Zaprzyjaźnij się z algorytmami, PWN, Warszawa, 2019. M.M. Sysło, Algorytmy, Helion, Gliwice 2016. M.M. Sysło, Piramidy, szyszki i inne konstrukcje algorytmiczne, Helion, Gliwice 2015. A.Y. Bhargava, Algorytmy. Ilustrowany przewodnik, Helion, Gliwice 2017. J. Grebosz, Opus magnum C++11. Programowanie w języku C++, Helion, Gliwice 2017. M. Dawson, Python dla każdego. Podstawy programowania, Helion, Gliwice 2014. czytaj dalej

Rozwiązywanie i wysyłanie zadań

W tej sekcji przedstawiamy kilka prostych zadań razem z rozwiązaniami w C++ oraz Pythonie. Przytoczone zadania można wysyłać w Systemie Informatycznym Olimpiady (SIO2). Spółgłoski i samogłoski (opracowanie w C++, opracowanie w Pythonie) Prostokąt (opracowanie w C++, opracowanie w Pythonie) Igrzyska (opracowanie w C++, opracowanie w Pythonie) Kwadrat (przykładowe rozwiązania) Odwrotność (przykładowe rozwiązania) Liczby Fibonacciego Zadanie Liczby Fibonacciego zostało drobiazgowo opisane w Samouczku, który przedstawia różne zagadnienia związane z rozwiązywaniem i wysyłaniem zadań. czytaj dalej

Nauka programowania i algorytmiki

Poniżej załączamy odnośniki do rekomendowanych kursów programowania, gdzie można nabyć podstawowe umiejętności potrzebne w Olimpiadzie. Wprowadzenie do programowania w C++ Wyczerpujący przewodnik, który krok po kroku wprowadza wszystkie podstawowe konstrukcje języka, które potrzebne są do startu w Olimpiadzie. Kurs wstępu do programowania w C++ Ten kurs zawiera wstęp do programowania w języku C++, jednakże nie jest to zwykły techniczny kurs danego języka, ale kurs programowania wykorzystujący nowoczesny język C++. czytaj dalej