ACM International Collegiate Programming Contest

ACM International Collegiate Programming Contest

Der ACM International Collegiate Programming Contest, abgekürzt ACM-ICPC oder ICPC, ist ein jährlich stattfindender, weltweiter und mehrstufiger Programmierwettbewerb für Universitätsstudenten. Der Wettbewerb fordert und fördert das Können der teilnehmenden Dreierteams im Gebiet der Problemanalyse, Softwareentwicklung und Teamarbeit. Veranstaltet wird der Wettbewerb von der Association for Computing Machinery (ACM), der Hauptsponsor ist IBM. Die Organisationszentrale befindet sich an der Universität Baylor, während die einzelnen regionalen Vorwettbewerbe teilweise autonom organisiert und durchgeführt werden.

Inhaltsverzeichnis

Geschichte

Die Geschichte des ICPC lässt sich bis auf einen 1970 an der Texas A&M University durchgeführten Programmierwettbewerb zurückverfolgen. Dieser wurde vom Alpha Chapter der Upsilon Pi Epsilon-Vereinigung organisiert. Bis 1977 blieb der Bewerb lokal beschränkt, in diesem Jahr fand er dann erstmals im Rahmen der ACM Computer Science Conference statt. Von 1977 bis 1989 nahmen praktisch nur Teams aus den Vereinigten Staaten und Kanada teil. Seit dem Jahr 1989 befindet sich die Organisationszentrale des Bewerbes an der Baylor University.

Mit der steigenden Anzahl an weltweit regional durchgeführten Vorbewerben (Regionalausscheidungen) stieg die Anzahl an Teilnehmern enorm an. Auch die finanzielle und personelle Unterstützung durch den Sponsor IBM seit 1997 trug zu diesem Anstieg bei. So nahmen im Jahr 1997 noch 840 Teams aus 560 Universitäten teil. Neun Jahre später, beim Bewerb des Jahres 2006, nahmen 6099 Teams von 1756 Universitäten in 82 Nationen teil[1]. Jährlich steigen die Teilnehmerzahlen zwischen 10 und 20 %.

Regeln des Bewerbes

Der ICPC ist ein Teambewerb. Ein Team besteht aus drei Studenten, die weniger als fünf Jahre an universitärer Ausbildung erhalten haben müssen. Eine Qualifikation in das Finale ist höchstens zweimal möglich.

Während des Wettbewerbes müssen innerhalb von fünf Stunden zwischen acht und zehn Programmieraufgaben gelöst werden. Als Programmiersprachen stehen C, C++ und Java zur Auswahl. Die erstellten Programme werden von den Teilnehmern an einen Server gesandt, der mit speziell entwickelten Testdaten die Funktion der Programme prüft. Die Teams werden über den Ausgang des Tests innerhalb von Minuten über Korrektheit oder Fehler des Programms benachrichtigt.

Gewinner ist das Team mit den meisten gelösten Aufgabenstellungen. Haben mehrere Teams die gleiche Anzahl gelöst, werden diese Teams nach der Geschwindigkeit der Problemlösung gereiht. Dafür werden für jedes Team die Zeitdauern zwischen dem Beginn des Bewerbes und dem Einsenden der korrekten Lösung addiert. Für jedes fehlerhafte Einsenden des Programms werden 20 „Strafminuten“ vergeben. Diese werden allerdings nur berücksichtigt, wenn das Problem bis zum Ende des Bewerbes auch tatsächlich gelöst werden kann.[2]

Die genannten Regeln gelten in dieser Form insbesondere für den Finalbewerb. Die Regeln der regionalen Vorausscheidungen orientieren sich weitgehend an diesen, können im Detail allerdings abweichen.

Im Vergleich zu ähnlichen Programmierwettbewerben, etwa der Internationalen Informatik-Olympiade müssen beim ICPC in kurzer Zeit (fünf Stunden) vergleichsweise viele Beispiele (acht bis zehn) gelöst werden. Zwar arbeiten beim ICPC nicht einzelne Personen, sondern Dreierteams, an der Lösung, diesen wird aber lediglich ein Rechner zur Verfügung gestellt. Um erfolgreich zu sein sind neben den Algorithmen- und Programmierkenntnissen auch Teamfähigkeit gefragt, sowie wie Fähigkeit, unter Zeitdruck exakt arbeiten zu können.

Regionale Ausscheidungen und Weltfinale

Der Wettbewerb wird in mehreren Phasen durchgeführt:

  1. Viele Universitäten organisieren lokale Ausscheidungen, um die von ihr entsandte Teilnehmer zu bestimmen.
  2. Die erste offizielle Phase sind die regionalen Vorausscheidungen (engl. Regionals). Je nach Regionalbewerb dürften zwei bis maximal drei Teams einer Universität teilnehmen, für das Finale kann sich aber höchstens ein Team pro Universität qualifizieren. Die erstplatzierten Teams aller Regionals qualifizieren sich für den Finalbewerb. Diese Bewerbe finden zu unterschiedlichen Zeitpunkten im Spätherbst statt.
  3. Das Weltfinale wird jedes Jahr in einem anderen Land im Frühjahr abgehalten. Zum Finale des Bewerbes 2006, das im März 2007 stattfand, wurden 88 Teams eingeladen.

Einige größere Regionen haben in den letzten Jahren auch sogenannte Superregionals organisiert. Dies sind inoffizielle Zwischenstufen zwischen den Regionals und dem Finale, zu dem die bestplatzierten Teams mehrerer geographisch zusammengehöriger Regionen eingeladen werden. Ein derartiger Bewerb ist für die Zukunft auch für Europa geplant.

Finale 2005

Eröffnungszeremonie 2005

Das Weltfinale 2005 fand am 6. April 2005 im Pudong Shangri-La Hotel in Shanghai, China statt. Es wurde von der Jiaotong-Universität Shanghai organisiert. 4109 Teams von 1582 Universitäten aus 71 Ländern nahmen an den Vorrunden teil, 78 davon wurden zum Finale eingeladen. Das Team der Jiaotong Universität konnte im „Heimspiel“ mit acht von zehn gelösten Beispielen auch den Titel erringen, den zweiten dieser Universität.

Finale 2006

Das Finale im Jahr 2006 wurde in San Antonio, Texas veranstaltet und von der Baylor University organisiert. 5606 Teams von 1733 Universitäten in 84 Nationen nahmen an den Vorrunden teil, 83 dieser Teams wurden zum Finale eingeladen. Den Titel konnte das Team der Saratov State University aus Russland erringen, das sechs von acht Beispielen löste.

Finale 2007

Das Weltfinale 2007 wurde vom 12.bis 16. März 2007 im Hilton Tokio Bay, Tokio, Japan abgehalten. 6099 Teams hatten an den Regionals teilgenommen, 88 davon wurden in das Finale eingeladen. Den Bewerb gewonnen hat die Universität Warschau mit acht von zehn gelösten Aufgaben.

Gewinner

Die Gewinner (World Champions) der Bewerbe seit 1977 sind:

Quellen

  1. ICPC-Factsheet 2006
  2. The Rules of the 2008 ACM-ICPC World Finals

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем написать курсовую

Schlagen Sie auch in anderen Wörterbüchern nach:

  • ACM International Collegiate Programming Contest — (abbreviated as ACM ICPC or just ICPC) is an annual multi tiered computer programming competition among the universities of the world. The contest is sponsored by IBM. Headquartered at Baylor University, with autonomous regions on six continents …   Wikipedia

  • ACM International Collegiate Programming Contest — Saltar a navegación, búsqueda Competición Internacional Universitaria ACM de Programación Obtenido de ACM International Collegiate Programming Contest …   Wikipedia Español

  • ACM International Collegiate Programming Contest — Pour les articles homonymes, voir ICPC. Logo du concours L’ACM International Collegiate Programming Contest (abrégé en ACM ICPC) est un concours annuel de programmation ouvert aux étudiants. À …   Wikipédia en Français

  • ACM International Collegiate Programming Contest — …   Википедия

  • ICFP Programming Contest — Необходимо проверить качество перевода и привести статью в соответствие со стилистическими правилами Википедии. Вы можете помочь улучшить эту статью, исправив в ней ошибки. Оригинал на английском языке …   Википедия

  • ACM ICPC Dhaka Site — ACM International Collegiate Programming Contest (abbreviated as ACM ICPC or just ICPC) is an annual multi tiered competition among the universities of the world. There are thirteen different sites in Asia that host Asia Regional Final and Dhaka… …   Wikipedia

  • ACM-ICPC World Finals — ACM International Collegiate Programming Contest (abbreviated as ACM ICPC or just ICPC) is an annual multi tiered computer programming competition among the universities of the world. This championship is organized into multiple levels and World… …   Wikipedia

  • International Olympiad in Informatics — The International Olympiad in Informatics (IOI) is an annual informatics competition for secondary school students. The first IOI was held in 1989 in Pravetz, Bulgaria.The contest consists of two days computer programming, solving problems of an… …   Wikipedia

  • ACM-ICPC — Der ACM International Collegiate Programming Contest, abgekürzt ACM ICPC oder ICPC, ist ein jährlich stattfindender, weltweiter und mehrstufiger Programmierwettbewerb für Universitätsstudenten. Der Wettbewerb fordert und fördert das Können der… …   Deutsch Wikipedia

  • Competición Internacional Universitaria ACM de Programación — La Competición Internacional Universitaria ACM de Programación (en inglés ACM International Collegiate Programming Contest, abreviado ACM ICPC o simplemente ICPC) es una competición anual de programación y algorítmica entre universidades de todo… …   Wikipedia Español

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”