X Akademickie Mistrzostwa Polski w Programowaniu Zespołowym
Kraków, 28-29 października 2005 r.

Zawody odbywają się pod patronatem JM Rektora Uniwersytetu Jagiellońskiego Profesora Karola Musioła



- Strona główna
- Wyniki zawodów
- Treści zadań
- Wzorce i testy
- Zdjęcia
- Przebieg zawodów
- Regulamin zawodów
- Ustalenia techniczne
- Historia zawodów
- Rejestracja
- Rozwiązania
- Adresy i dojazd
- Linki konkursowe



Sponsor zawodów:

MOTOROLA

Regulamin zawodów

1. Cel zawodów

Zawody są okazją do zademonstrowania i doskonalenia umiejętności w zespołowym rozwiązywaniu problemów informatycznych. Umożliwiają one nawiązanie kontaktów między studentami z różnych ośrodków akademickich. Pozwalają poznać specyfikę tego rodzaju rywalizacji oraz pomagają przygotować się do ewentualnego uczestnictwa w ACM International Collegiate Programming Contest.

2. Uczestnictwo w zawodach

2.1. W zawodach biorą udział zespoły (drużyny), składające się maksymalnie z trzech osób - studentów polskiej uczelni.

2.2. W zawodach nie mogą brać udziału osoby, które ukończyły już jakiekolwiek studia w kraju lub za granicą (za wyjątkiem studiów licencjackich) lub które już dwukrotnie uczestniczyły w finałach ACM International Collegiate Programming Contest.

2.3. Potwierdzeniem spełnienia przez członków zespołów warunków uczestnictwa jest zaświadczenie wystawione przez uczelnię, z której pochodzą studenci.

2.4. Zgłoszenia drużyn do zawodów dokonują uczelnie wyższe. Każda uczelnia ma prawo wystawić do zawodów jeden zespół, który ma automatycznie zagwarantowane prawo startu. Ponadto, uczelnie mogą zgłosić gotowość wystawienia większej liczby zespołów, o których przyjęciu, w miarę wolnych miejsc, zadecyduje Komitet Sterujący.

2.5. Każdy zespół wyznacza spośród siebie kapitana, który podczas zawodów będzie kontaktował się z organizatorami.

3. Przebieg zawodów

3.1. Zawody trwają dwa dni.

3.2. Pierwszy dzień zawodów jest przeznaczony na aklimatyzację uczestników i sesję próbną, w czasie której uczestnicy będą mogli zapoznać się ze środowiskiem programistycznym (sieć komputerowa, kompilatory, tryb oceniania zadań itp.).

3.3. Właściwe zawody odbywają się w drugim dniu, trwają 5 godzin. Przewodniczący Komitetu Organizacyjnego w porozumieniu z Sędzią Głównym ma prawo przedłużyć czas rozwiązywania zadań w przypadku wystąpienia nieprzewidzianych trudności.

3.4. Zawody będą przeprowadzane w środowisku sieciowym. Sieć służy do przesyłania rozwiązań oraz do tworzenia wydruków kodu źródłowego. Używanie sieci do innych celów, np. zdalne logowanie, ssh, ftp, telnet i inne jest zakazane i może być zablokowane. Każdy zawodnik, który znajdzie lukę w systemie ochrony, jest zobowiązany powiadomić o tym niezwłocznie personel pomocniczy zawodów.

3.5. Każdy zespół ma do dyspozycji zestaw komputerowy pracujący pod kontrolą systemu operacyjnego Linux wyposażony w: kompilatory gcc, g++, fpc; edytory emacs, joe, mcedit, vim; program uruchomieniowy gdb; standardowe narzędzia tekstowe grep, diff itp. Zespołowi prezentuje się 8-10 zadań programistycznych, których rozwiązania należy przedstawić w językach Pascal, C lub C++ (w sensie języków akceptowanych przez wyżej wymienione kompilatory). Zadania będą sformułowane w sposób niezależny od języka programowania.

3.6. Zadania będą sformułowane w języku polskim.

3.7. Zawodnicy mogą zgłosić fakt zaistnienia niejasności lub wystąpienia błędu w sformułowaniu zadania. Jeśli sędziowie zawodów uznają, że uwaga jest zasadna, każdy zespół otrzyma stosowne wyjaśnienia.

3.8. Każde rozwiązanie musi składać się z pojedynczego pliku z kodem źródłowym w dowolnym z dostępnych języków programowania. Program nie może korzystać z plików dodatkowych oraz nie może tworzyć plików tymczasowych.

3.9. Uczestnicy mogą korzystać z własnych materiałów: słowników, książek, wydruków programów, notatek. Nie jest dozwolone korzystanie z tekstów zapisanych w formie elektronicznej, z kalkulatorów, przenośnych komputerów itp.

3.10. Zawodnikom w czasie zawodów wolno komunikować się jedynie z członkami swojej drużyny oraz wyznaczonym personelem pomocniczym. Każdy kontakt z innymi osobami (w szczególności z zawodnikami innych drużyn lub trenerem) jest zabroniony pod groźbą dyskwalifikacji. Personel pomocniczy może pomagać uczestnikom w przypadku wystąpienia problemów związanych ze środowiskiem programistycznym, np. wyjaśniając komunikaty o błędach systemowych.

3.11. W trakcie zawodów, przez pierwsze cztery godziny trwania sesji, do publicznej wiadomości są na bieżąco podawane aktualne wyniki drużyn. Przez ostatnią godzinę informacje od zespołu sędziowskiego otrzymują tylko zawodnicy.

3.12. Po zakończeniu zawodów zostaną przedstawione oficjalne wyniki.

4. Komisja sędziowska zawodów

4.1. Skład sędziowski i Sędziego Głównego wyznacza Przewodniczący Komitetu Sterującego w porozumieniu z Przewodniczącym Komitetu Organizacyjnego. Sędzia Główny nie może być pracownikiem tej samej uczelni, co Przewodniczący Komitetu Organizacyjnego lub Przewodniczący Komitetu Sterującego.

4.2. Skład sędziowski jest upoważniony do zmiany regulaminu w chwili zajścia nieprzewidzianych wypadków. Decyzje składu sędziowskiego są ostateczne i nie podlegają apelacji.

4.3. Sędziowie zawodów są odpowiedzialni za ocenę prawidłowości rozwiązań zadań. Sędzia Główny, konsultując decyzje z pozostałymi sędziami, odpowiada za wyłonienie zwycięzców.

5. Kryteria i tryb oceny rozwiązań zadań

5.1. Drużyny przedstawiają sędziom rozwiązania zadań w czasie trwania zawodów.

5.2. Rozwiązania zadań są oceniane przez sędziów na bieżąco. Każde rozwiązanie przedstawione do oceny jest albo akceptowane, albo odrzucane, a drużyna jest powiadamiana o tej ocenie. Przyczyna odrzucenia rozwiązania jest określana jednym z następujących komunikatów:

  • błąd kompilacji (compile-time error),
  • błąd wykonania (run-time error),
  • przekroczony limit czasu (time limit exceeded),
  • błędna odpowiedź (wrong answer),
  • błąd prezentacji (presentation error).

5.3. Jeżeli rozwiązanie nie zostanie zaakceptowane, drużyna może przedstawić kolejną wersję rozwiązania.

5.4. Drużyny są szeregowane na podstawie liczby poprawnie rozwiązanych zadań. O kolejności drużyn posiadających tę samą liczbę rozwiązanych zadań decyduje łączny czas rozwiązywania zadań. Za czas rozwiązania zadania przyjmuje się czas, jaki upłynął od początku zawodów do momentu przedstawienia poprawnego rozwiązania, powiększony o karę 20 minut za każde przedstawienie błędnego rozwiązania. Łączny czas rozwiązywania zadań jest obliczany tylko na podstawie zaakceptowanych rozwiązań - kara związana z nierozwiązanymi zadaniami nie ma wpływu na wynik drużyny.

e-mail: amppz.tcs.uj.edu.pl