Czego się nauczysz
- omówienie zagadnień związanych z zaawansowanymi algorytmami
- zapoznanie z informacjami dotyczącymi przecinania się obiektów geometrycznych na płaszczyźnie oraz położenia punktu względem obiektów płaszczyzny
- usystematyzowanie wiedzy w zakresie podstawowych technik rozwiązywania problemów informatycznych
Program kursu
- Taktyka
- Przed zawodami
- Wybór zadania
- Ponowne czytanie
- Testowanie
- „Bruty”
- Standard Template Library
- Kontener vector
- Iteratory
- Pary
- Kontener set
- Map
- Sortowanie i wyszukiwanie binarne
- Permutacje
- Haszowanie
- Czym jest haszowanie?
- Tablica haszująca
- Haszowanie słów
- Algorytm Karpa – Millera – Rosenberga
- Słownik posłów bazowych
- Porównywanie posłów
- Najdłuższe powtarzające się podsłowo
- Najdłuższe wspólne podsłowo
- Maksymalny przepływ
- Metoda Forda – Fulkersona
- Algorytm Edmondsa – Karpa
- Twierdzenie o maksymalnym przepływie i minimalnym przekroju
- Przekroje w zadaniach
- Skojarzenia
- Maksymalne skojarzenia
- Szybsze rozwiązania
- Twierdzenie Koeniga
- Przecinanie się obiektów geometrycznych na płaszczyźnie
- Przecięcie dwóch prostych
- Przecięcie dwóch odcinków
- Przecięcie prostej i okręgów
- Przecięcie dwóch okręgów
- Położenie punktu względem obiektów płaszczyzny
- Względem prostej
- Względem okręgu
- Względem wielokąta
- Znajdowanie najdalszych punktów w danym zbiorze
- Znajdowanie najbliższych punktów w danym zbiorze
Opis kursu
Kurs adresowany jest do osób, które opanowały wiadomości z zakresu najważniejszych podstawowych technik rozwiązywania problemów informatycznych. Szczególnie zalecane jest wcześniejsze zapoznanie z kursami „Przegląd podstawowych algorytmów” oraz „Struktury danych i ich zastosowania”. Kurs głównie nastawiony jest na przygotowanie uczniów do konkursów. Jeden z rozdziałów zawiera rady co do samej taktyki startowania w zawodach. Spora część kursu zakłada znajomość C++, nie jest ona jednak wymagana do zrozumienia większości wiadomości, które zostały przekazane w materiałach. Podczas kursu uczestnicy omówią zagadnienia związane m.in. z Standard Template Library, haszowaniem, położeniem punktu względem obiektów płaszczyzny.
Autorami kursu są studenci Uniwersytetu Warszawskiego – Bolesław Kulbabiński, Tomasz Kulczyński, Błażej Osiński.
Podobne kursy
Algorytmika i programowanie
Różnorodne algorytmy obliczeń i ich komputerowe realizacje
Szkoła ponadpodstawowa, Nauczyciele
Celem kursu jest przekazanie uczestnikom wiedzy dotyczącej m.in. algorytmów wyznaczania: dziesiętnej i binarnej reprezentacji liczb, obliczania wartości wielomianu, największego wspólnego dzielnika dwóch liczb (algorytm Euklidesa) oraz wartości potęgi.
Algorytmika i programowanie
Do czego można wykorzystać język Javascript?
Szkoła ponadpodstawowa, Nauczyciele
Kurs przedstawia możliwości języka JavaScript (JS). Wykorzystaj go do wzbogacania stron i serwisów www o elementy interaktywne i graficzne.
Algorytmika i programowanie
Czy wszystko można policzyć na komputerze?
Szkoła ponadpodstawowa, Nauczyciele
Kurs wprowadza do zagadnienia złożoności problemów i algorytmów ich rozwiązywania.
Algorytmika i programowanie
Język językowi nierówny
Szkoła ponadpodstawowa, Nauczyciele
Kurs przedstawia wybrane aspekty lingwistyczne oraz nakreśla w sposób uproszczony i subiektywny zagadnienia ewolucji języków programowania.
Algorytmika i programowanie
Algorytmika internetu
Szkoła ponadpodstawowa, Nauczyciele
Kurs omawia najważniejsze fakty dotyczące historii algorytmów i rozwoju internetu.
Algorytmika i programowanie
Między programowaniem a wnioskowaniem
Szkoła ponadpodstawowa, Nauczyciele
Kurs przekazuje wiedzę z zakresu podstaw języka Prolog oraz języków zapytań.
Algorytmika i programowanie
Algorytmy poszukiwania i porządkowania. Elementy języka programowania
Szkoła ponadpodstawowa, Nauczyciele
Kurs przekazuje wiedzę z zakresu algorytmiki i programowania.
Algorytmika i programowanie
Proste rachunki wykonywane za pomocą komputera
Szkoła ponadpodstawowa, Nauczyciele
Kurs przekazuje wiedzę na temat obliczeń wykonywanych za pomocą komputera.
Algorytmika i programowanie
Przegląd podstawowych algorytmów
Szkoła ponadpodstawowa, Nauczyciele
Kurs omawia techniki budowania algorytmów. Uczestnicy zapoznają się z informacjami na temat programowania dynamicznego, rekurencji, strategii zachłannych.
Algorytmika i programowanie
Techniki algorytmiczne przybliżone i dokładne
Szkoła ponadpodstawowa, Nauczyciele
Kurs umożliwia poszerzenie wiedzy z zakresu algorytmiki i programowania. Wprowadza podstawowe pojęcia oraz definiuje różnorodne techniki algorytmiczne.
Algorytmika i programowanie
Wprowadzenie do algorytmiki i programowania – wyszukiwanie i porządkowanie informacji
Szkoła ponadpodstawowa, Nauczyciele
Kurs dotyczy podstawowych zagadnień związanych z algorytmiką i programowaniem. Dowiedz się, jak rozwiązywać problemy w postaci algorytmów i implementować je w językach Pascal i C++.
Algorytmika i programowanie
Struktury danych i ich zastosowanie
Szkoła ponadpodstawowa, Nauczyciele
Kurs ma na celu zapoznanie uczestników z różnymi strukturami danych oraz ich zastosowaniem.
Algorytmika i programowanie
Znajdowanie najkrótszych dróg i najkrótszych oraz najniższych drzew
Szkoła ponadpodstawowa, Nauczyciele
Kurs zapoznaje z elementami teorii grafów i obliczeń na grafach. Dowiesz się z niego, jak stosuje się grafy w informatyce (np. drzewa wyrażeń, drzewa algorytmów) oraz nauczysz się rozwiązywać klasyczne problemy obliczeniowe z ich wykorzystaniem.
Algorytmika i programowanie
Porządek wśród informacji kluczem do szybkiego wyszukiwania
Szkoła ponadpodstawowa, Nauczyciele
Kurs jest wprowadzeniem do algorytmiki. Zakres tematyczny obejmuje poszukiwania elementów w zbiorach nieuporządkowanych i uporządkowanych oraz problem porządkowania.
Algorytmika i programowanie
O relacjach i algorytmach
Szkoła ponadpodstawowa, Nauczyciele
Kurs przekazuje uczestnikom wiedzę na temat relacji dwuczłonowych i sposobów ich reprezentacji w postaci macierzy lub grafu.
Algorytmika i programowanie
Jak wnioskują maszyny
Szkoła ponadpodstawowa, Nauczyciele
Kurs dotyczy wprowadzenia do logiki z perspektywy jej zastosowań w informatyce i sztucznej inteligencji. Poznaj klasyczny rachunek zdań i związek między wyszukiwaniem a wnioskowaniem.
Algorytmika i programowanie
Po co informatykom logika?
Szkoła ponadpodstawowa, Nauczyciele
Kurs omawia zagadnienia związane z logiką oraz wykorzystaniem logiki w informatyce.
Algorytmika i programowanie
Fraktale wokół nas
Szkoła ponadpodstawowa, Nauczyciele
Celem kursu jest zapoznanie uczestników z tematem fraktali oraz omówienie zagadnień matematycznych dotyczących podobieństwa i samopodobieństwa figur.
Algorytmika i programowanie
Programowanie współbieżne w informatyce i nie tylko
Szkoła ponadpodstawowa, Nauczyciele
Kurs omawia najważniejsze zagadnienia dotyczące programowania współbieżnego.
Algorytmika i programowanie
Mechaniczne dowodzenie twierdzeń
Szkoła ponadpodstawowa, Nauczyciele
Kurs porusza zagadnienia dotyczące automatycznego dowodzenia twierdzeń. Uczestnicy omówią również podstawy dotyczące logiki zdań.
Algorytmika i programowanie
Zaawansowane algorytmy
Szkoła ponadpodstawowa, Nauczyciele
Kurs pomoże uczestnikom w zgłębianiu najtrudniejszych zagadnień algorytmicznych, które pojawiają się na konkursach informatycznych.
Algorytmika i programowanie
Pomysł, przepis, program… i co dalej?
Szkoła ponadpodstawowa, Nauczyciele
Kurs przekazuje uczestnikom wiadomości dotyczące algorytmu wydawania reszty.
Algorytmika i programowanie
Strukturalnie czy obiektowo – czyli droga do sukcesu
Szkoła ponadpodstawowa, Nauczyciele
Kurs obejmuje treści w zakresie programowania obiektowego – przybliża jego cechy oraz podstawowe pojęcia, takie jak klasa, obiekt, konstruktor, modyfikator dostępu, hermetyzacja.
Algorytmika i programowanie
Razem można więcej – podstawy pracy zespołowej
Szkoła ponadpodstawowa, Nauczyciele
Kurs przedstawia informacje związane z wykorzystywanymi w procesie tworzenia systemów informatycznych narzędziami CASE oraz z językiem UML.
Algorytmika i programowanie
Podstawy programowania okienkowego w środowisku Visual Studio
Szkoła ponadpodstawowa, Nauczyciele
Kurs dotyczy podstaw programowania okienkowego w środowisku Visual Studio oraz programowania obiektowego. Poznaj język C# i dowiedz się, jak rozwiązywać problemy programistyczne.
Algorytmika i programowanie
Wprowadzenie do programowania obiektowego
Szkoła ponadpodstawowa, Nauczyciele
Kurs stanowi wprowadzenie do obiektowego modelu programowania z przykładami w języku C#. Poznaj istotne elementy tego popularnego języka programowania.
Algorytmika i programowanie
Podstawy języka Python
Szkoła ponadpodstawowa, Nauczyciele
Kurs wprowadza użytkownika w świat języka Python, pozwalającego tworzyć zaawansowane aplikacje dla różnych systemów operacyjnych.
Algorytmika i programowanie
Tworzenie aplikacji mobilnych
Szkoła ponadpodstawowa, Nauczyciele
Kurs zawiera informacje teoretyczne i praktyczne na temat tworzenia aplikacji kalkulatora dla systemu Android.
Algorytmika i programowanie
Podstawy analizy danych w języku Python
Szkoła ponadpodstawowa, Nauczyciele
Celem kursu jest omówienie podstawowych zagadnień związanych z analizą danych w języku Python.
Algorytmika i programowanie
Programowanie w Scratch Junior z Klubem Młodego Programisty
Szkoła podstawowa, Nauczyciele
(klasy I–III, rodzice)
Kurs jest pierwszym krokiem w nauce programowania. Uczestnicy poznają możliwości aplikacji Scratch Junior i stworzą w niej swoje pierwsze programy. Nauczą się wykonywać animacje, kartki okolicznościowe i proste gry zręcznościowe. Przekonają się też, że programowanie to sposób na kreatywne spędzenie czasu.
Algorytmika i programowanie
Programowanie w Scratch 3.0 z Klubem Młodego Programisty
Szkoła podstawowa, Nauczyciele
(klasy IV–VI, rodzice)
Kurs uczy programowania blokowego od podstaw. Uczestnicy zapoznają się z funkcjonalnościami aplikacji Scratch 3.0 i stworzą w niej swoje pierwsze programy (animacje, gry zręcznościowe, gry przygodowe). Nauczą się wykorzystywać konstrukcje warunkowe, pętle, zmienne i funkcje podczas tworzenia programów. Poznają też zasady remiksowania projektów.
Algorytmika i programowanie
Programowanie w Pythonie z Klubem Młodego Programisty – poziom podstawowy
Szkoła podstawowa, Nauczyciele
W dzisiejszych czasach programowanie to umiejętność, która może dać nam wiele możliwości. Python jest jednym z wiodących języków programowania. Według corocznych ankiet prowadzonych przez serwis Stack Overflow od kilku lat utrzymuje się w ścisłej czołówce najbardziej pożądanych języków wśród programistów. Poznaj podstawy Pythona z Klubem Młodego Programisty.
Algorytmika i programowanie
Programowanie w Pythonie z Klubem Młodego Programisty – poziom średnio zaawansowany
Szkoła ponadpodstawowa, Nauczyciele
W dzisiejszych czasach programowanie to umiejętność, która może dać nam wiele możliwości. Python jest jednym z wiodących języków programowania. Według corocznych ankiet prowadzonych przez serwis Stack Overflow od kilku lat utrzymuje się w ścisłej czołówce najbardziej pożądanych języków wśród programistów. Kontynuuj naukę Pythona z Klubem Młodego Programisty.
Algorytmika i programowanie
Python z KMP na CodeWeek 2022 – poziom podstawowy
Szkoła podstawowa, Szkoła ponadpodstawowa, Nauczyciele
Język obiektowy Python to jeden z popularnych języków programowania, który ciągle zyskuje nowe zastosowania w dziedzinie informatyki, a specjaliści coraz częściej dostrzegają jego potencjał. Dlatego właśnie na CodeWeek przygotowaliśmy propozycję dotyczącą Pythona.
Algorytmika i programowanie
Python z KMP na CodeWeek 2022 – poziom średnio zaawansowany
Szkoła ponadpodstawowa, Nauczyciele
Język obiektowy Python to jeden z popularnych języków programowania, który ciągle zyskuje nowe zastosowania w dziedzinie informatyki, a specjaliści coraz częściej dostrzegają jego potencjał. Dlatego właśnie na CodeWeek przygotowaliśmy propozycję dotyczącą Pythona.
Algorytmika i programowanie
Scratch Junior z KMP na CodeWeek 2022
Szkoła podstawowa, Szkoła ponadpodstawowa, Nauczyciele
Moduł jest rozwinięciem kursu „Programowanie w Scratch Junior z Klubem Młodego Programisty”. Dzięki materiałowi uczniowie jeszcze lepiej poznają możliwości aplikacji Scratch Junior i stworzą w niej zegar przypominający, że CodeWeek może trwać cały rok. Nauczą się wykonywać animację z dźwiękami i przekonają się, że kodowanie to sposób na kreatywne spędzenie czasu.
Algorytmika i programowanie
Scratch 3.0 z KMP na CodeWeek 2022
Szkoła ponadpodstawowa, Nauczyciele
Moduł „CodeWeek i Scratch 3.0 – codeweekowa gra przygodowa” to rozwinięcie kursu „Programowanie w Scratch 3.0”. Uczestnicy przypomną sobie funkcjonalności programu Scratch 3.0, a następnie stworzą grę przygodową nawiązującą do inicjatywy CodeWeek. Nauczą m.in. się wykorzystywać konstrukcje warunkowe, pętle oraz zmienne podczas tworzenia programów.
Informacje o kursie
Zaawansowane algorytmy
Szkoła ponadpodstawowa, Nauczyciele