W poszukiwaniu wyzwań algorytmicznych

Post on 04-Feb-2016

56 views 0 download

description

W poszukiwaniu wyzwań algorytmicznych. Jakub Radoszewski, Wydział Matematyki, Informatyki i Mechaniki Uniwersytetu Warszawskiego. Dlaczego tu jestem?. Co, gdzie, kiedy?. Uczestnicy: 112 drużyn z całego świata (wyłonionych spośród 25 016 studentów z 2219 uczelni z 85 krajów) - PowerPoint PPT Presentation

Transcript of W poszukiwaniu wyzwań algorytmicznych

W poszukiwaniuwyzwań algorytmicznych

Jakub Radoszewski, Wydział Matematyki, Informatyki i Mechaniki

Uniwersytetu Warszawskiego

Dlaczego tu jestem?

Co, gdzie, kiedy?

Uczestnicy: 112 drużyn z całego świata (wyłonionych spośród 25 016 studentów z 2219 uczelni z 85 krajów)

Termin: 14-18 maja (zawody: 17 maja)

Lokalizacja:Wydział Zarządzania Uniwersytetu WarszawskiegoAuditorium Maximum Uniwersytetu WarszawskiegoPolitechnika WarszawskaPałac Kultury i NaukiCentrum Nauki KopernikHotele: Marriott i Sobieski

Orlando, Floryda, maj 2011

Jak to się stało?

Finały światowe ACM ICPC organizowane sąod 1977 roku.

Dotychczas tylko 3 razy w Europie (Eindhoven 1999, Praga 2004, Sztokholm 2009) i łącznie 6 razy poza USA i Kanadą.

W rywalizacji o organizację finałów 2012 pokonaliśmy kilka innych lokalizacji, m.in. Sankt Petersburg.

Jak to możliwe?

Sukcesy Polakóww konkursach programistycznych

Polacy dwukrotnie zwyciężali w:

Mistrzostwach Świata w Programowaniu Zespołowym (2003, 2007 r.)

i na Międzynarodowej Olimpiadzie Informatycznej (2006, 2007 r.).

Mistrzowie 2003

Andrzej Gąsienica-Samek, Tomasz Czajka, Krzysztof OnakBeverly Hills, 2003 r.

Mistrzowie 2007

Filip Wolski, Marcin Pilipczuk, Marek CyganTokio, 2007 r.

Najlepszy licealista 2006

Filip Wolski, Meksyk, 2006 r.

Informatyka specjalnością młodych Polaków

Inne sukcesy Polaków

Polacy zwyciężali i zajmowali czołowe miejsca w prestiżowych konkursach Facebook Hacker Cup, Google Code Jam, Microsoft Imagine Cup, TopCoder Open…

Organizacja Międzynarodowej Olimpiady Informatycznej 2005

Organizacja ACM ICPC 2012

Przykład zadania

Jak pokryć planszę 8x8 z jednym usuniętym polemza pomocą literek L?

Krok 1: dziel

Krok 2: postaw jedną L-kę

Krok 3: to samow kwadratach 4x4

Krok 4: to samow kwadratach 2x2

Związki konkursów z praktyką

ACM ICPC sponsored by IBM Google Code Jam Facebook Hacker Cup Microsoft Imagine Cup…

Związki konkursów z teorią

Zadanie 1: Jaskinia

Jaskinia składa się z pewnej liczby komór połączonychw linię. W jednej z komór Małgosia ukryła skarb. Jaś musi zgadnąć położenie skarbu, zadając pytania postaci: „Czy skarb jest położony na lewo, czy też na prawo od danej komory?”.

Zadanie 1: Jaskinia

Jaskinia składa się z pewnej liczby komór połączonychw linię. W jednej z komór Małgosia ukryła skarb. Jaś musi zgadnąć położenie skarbu, zadając pytania postaci: „Czy skarb jest położony na lewo, czy też na prawo od danej komory?”.

Zadanie 1: Jaskinia

Jaskinia składa się z pewnej liczby komór połączonychw linię. W jednej z komór Małgosia ukryła skarb. Jaś musi zgadnąć położenie skarbu, zadając pytania postaci: „Czy skarb jest położony na lewo, czy też na prawo od danej komory?”.

Zadanie 1: Jaskinia

Jaskinia składa się z pewnej liczby komór połączonychw linię. W jednej z komór Małgosia ukryła skarb. Jaś musi zgadnąć położenie skarbu, zadając pytania postaci: „Czy skarb jest położony na lewo, czy też na prawo od danej komory?”.

Zadanie 1: Jaskinia

Jaskinia składa się z pewnej liczby komór połączonychw linię. W jednej z komór Małgosia ukryła skarb. Jaś musi zgadnąć położenie skarbu, zadając pytania postaci: „Czy skarb jest położony na lewo, czy też na prawo od danej komory?”.

Właściwe zadanie 1

Jaskinia składa się z pewnej liczby komór połączonychw drzewo. W jednej z komór Małgosia ukryła skarb. Jaś musi zgadnąć położenie skarbu, zadając pytania postaci: „W jakim kierunku od danej komory znajduje się skarb?”.

Właściwe zadanie 1

Jaskinia składa się z pewnej liczby komór połączonychw drzewo. W jednej z komór Małgosia ukryła skarb. Jaś musi zgadnąć położenie skarbu, zadając pytania postaci: „W jakim kierunku od danej komory znajduje się skarb?”.

Właściwe zadanie 1

Jaskinia składa się z pewnej liczby komór połączonychw drzewo. W jednej z komór Małgosia ukryła skarb. Jaś musi zgadnąć położenie skarbu, zadając pytania postaci: „W jakim kierunku od danej komory znajduje się skarb?”.

Historia zadania

Zadania pojawiło się na Olimpiadzie Informatycznejw 2004 roku. Niestety, żaden zawodnik go nie rozwiązał…

Autor zadania opublikował rozwiązanie na prestiżowej konferencji z informatyki teoretycznej IEEE FOCS.

Zadanie 2: Monety

Mamy kilka stosów monet, z których każda jest złotym dukatem lub nic niewartym miedziakiem. W grze uczestniczą dwaj gracze, którzy naprzemiennie zabierają po jednej monecie z wierzchołka wybranego stosu. Celem każdego z graczy jest zebrać jak najwięcej dukatów. Kto wygra?

Historia zadania

To zadanie opowiedziałem Tomkowi Idziaszkowiw 2005 roku.

Tomek zdołał je rozwiązać w 2010 roku, po czym jego uogólnienie stało się najtrudniejszym zadaniem ogólnopolskiego konkursu Potyczki Algorytmiczne 2010 (zadanie rozwiązane przez 2 zawodników!).

Tomek pracuje nad publikacją swoich wyników,a tymczasem izomorficzny problem stał się podstawą rozprawy doktorskiej Bartosza Walczaka (Uniwersytet Jagielloński).

Zadanie 3: Klika

W danym grafie nieskierowanym szukamy największej kliki, czyli zbioru wierzchołków, z których każde dwa są połączone krawędzią.

Zadanie 3: Klika

W danym grafie nieskierowanym szukamy największej kliki, czyli zbioru wierzchołków, z których każde dwa są połączone krawędzią.

Właściwe zadanie 3

Wiemy, że graf skierowany o n wierzchołkach zawiera klikę złożoną z co najmniej 2n/3 wierzchołków. Znaleźćw tym grafie klikę zawierającą co najmniej n/3 wierzchołków.

Zadanie 4: Zagadka

Król zakłada złote i srebrne korony na głowy n synów. Wiadomo, że któryś z nich ma złotą koronę. Każdy syn widzi korony pozostałych synów, ale nie swoją.

Każdego dnia król pyta jednocześnie wszystkich synów, czy wiedzą, jakiego koloru koronę mają na głowie. Synowie słyszą nawzajem swoje odpowiedzi.

Okazuje się, że po pewnym czasie wszyscy synowie będą znali kolory swoich koron!

Historia zadania

Jest wiele tego typu zagadek, np.:„Mój sąsiad powiedział mi, że ma 3 córki. Gdy go spytałem, ile mają lat, powiedział, że iloczyn ich wieków to 36. To mi nie wystarczało, żeby wyznaczyć konkretne liczby, więc powiedział mi, że suma ich wieków jest równa numerowi jego mieszkania. Mimo że znałem ten numer, wciąż nie byłem w stanie obliczyć wieków poszczególnych córek. Na to on powiedział, że najstarsza córka miała wczoraj urodziny. Dzięki tej informacji udało mi się rozwiązać zagadkę”.

Na Potyczkach Algorytmicznych 2008 pojawiło się zadanie, które unifikuje większość znanych tego typu zagadek.

Takie zagadki często pojawiają się na rozmowach kwalifikacyjnych do wielkich korporacji informatycznych!

Skąd tytuł wykładu?

W poszukiwaniu wyzwań.

Wybór zadańz konkursów programistycznych

Uniwersytetu Warszawskiego