Prowadzony w
cyklach:
2024/25, 2025/26, 2026/27
Kod ISCED: 0613
Punkty ECTS:
6
Język:
polski
Organizowany przez:
Wydział Matematyki i Informatyki
Konwersatorium algorytmiki turniejowej 1000-I1KAT
Na zajęciach będą omawiane m.in. następujące zagadnienia:
- Elementy strategii na zawodach
- Pomoce ,,naukowe'': makra i biblioteczka
- Struktury danych
- Algorytmy grafowe
- Geometria obliczeniowa
- Kombinatoryka
- Teoria liczb
- Algorytmy tekstowe
- Algorytmy numeryczne
Całkowity nakład pracy studenta
30 godz. - wykład,
30 godz. - ćwiczenia,
40 godz. - praca własna - bieżące przygotowanie do zajęć, samodzielne rozwiązywanie zadań konkursowych,
30 godz. - udział w zewnętrznych konkursach programistycznych,
20 godz. praca własna - przygotowanie do zaliczenia i egzaminu.
RAZEM: 150 godz.
6 pkt. ECTS
Efekty uczenia się - wiedza
Student:
W1: ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie programowania, algorytmów i złożoności (KW_02)
W2: zna najważniejsze konstrukcje programistyczne (KW_03)
W3: zna metody i techniki projektowania, analizowania i programowania algorytmów (KW_04)
W4: zna najważniejsze struktury danych i wykonywane na nich operacje (KW_05)
Efekty uczenia się - umiejętności
Student:
U1: potrafi projektować oraz analizować algorytmy pod kątem ich poprawności i złożoności obliczeniowej (KU_07)
U2: potrafi użyć podstawowych oraz zaawansowanych technik algorytmicznych i struktur danych do rozwiązania postawionych przed nim zadań (KU_07)
U3: potrafi wykorzystać wiedzę matematyczną do formułowania, analizowania i rozwiązywania problemów algorytmicznych (KU_01)
U4: potrafi efektywnie implementować zaprojektowane przez siebie algorytmy (KU_07)
U5: potrafi pisać, uruchamiać i testować programy w wybranych środowiskach programistycznych (KU_05)
U6: potrafi czytać ze zrozumieniem programy zapisane w różnych językach programowania (KU_06)
Wszystkie czynności związane z rozwiązywaniem problemów algorytmicznych student powinien wykonywać w ograniczonym czasie, podobnie do warunków panujących w trakcie zawodów programistycznych.
Efekty uczenia się - kompetencje społeczne
Student:
KK1: skutecznie przekazuje innym swoje myśli w zrozumiały sposób (KK_02)
KK2: właściwie posługuje się terminologią fachową (KK_02)
KK3: potrafi nawiązać kontakt w obrębie swojej dziedziny i z osobą reprezentującą inną dziedzinę (KK_02)
KK4: rozumie potrzebę ciągłego uczenia się i doskonalenia swoich umiejętności (KK_03)
Koordynatorzy przedmiotu
Metody dydaktyczne
Co drugie zajęcia będzie się odbywał konkurs programistyczny. Jego wyniki oraz metody rozwiązywania zadań będą omawiane na pozostałych co drugich zajęciach.
Metody dydaktyczne eksponujące
- pokaz
Metody dydaktyczne podające
- wykład problemowy
- wykład konwersatoryjny
- wykład konwersatoryjny
Metody dydaktyczne poszukujące
- klasyczna metoda problemowa
- laboratoryjna
- laboratoryjna
Rodzaj przedmiotu
przedmiot fakultatywny
Wymagania wstępne
Znajomość algorytmów i struktur danych, umiejętność programowania w wybranym języku programowania, podstawowa wiedza z matematyki dyskretnej i teorii grafów.
Kryteria oceniania
Składowymi oceny końcowej będą:
- łączna liczba rozwiązanych zadań
- liczba rozwiązań zadań prezentowanych podczas zajęć
- liczba oraz jakość przygotowanych opracowań zadań
Literatura
Literatura podstawowa:
- Steven Halim, Felix Halim Competitive programming: increasing the lower bound of programming contests
- Steven S. Skiena, Miguel A. Revilla Wyzwania programistyczne
- Piotr Stańczyk Algorytmika praktyczna: nie tylko dla mistrzów
- Thomas H. Cormen, Charles E. Leicerson, Ronald L. Rivest, Clifford Stein Wprowadzenie do algorytmów
- Donald E. Knuth Sztuka programowania
- Witold Lipski Kombinatoryka dla programistów
Literatura uzupełniająca:
- Online Judge online.judge.org
- Sphere Online Judge spoj.sphere.pl
- Olimpiada Informatyczna www.oi.edu.pl
- Potyczki algorytmiczne potyczki.mimuw.edu.pl
Uwagi
|
W cyklu 2024/25:
Ze względu na specyfikę przedmiotu zadania rozwiązywane podczas zajęć są istotnie różne od zadań rozwiązywanych w latach ubiegłych. |
W cyklu 2025/26:
Ze względu na specyfikę przedmiotu zadania rozwiązywane podczas zajęć są istotnie różne od zadań rozwiązywanych w latach ubiegłych. |
W cyklu 2026/27:
Ze względu na specyfikę przedmiotu zadania rozwiązywane podczas zajęć są istotnie różne od zadań rozwiązywanych w latach ubiegłych. |
Więcej informacji
Dodatkowe informacje (np. o kalendarzu rejestracji, prowadzących zajęcia, lokalizacji i terminach zajęć) mogą być dostępne w serwisie USOSweb: