Über Competitive Programming an der RWTH
tldr;
- Team aus 3 Leuten vs ca. 12 Probleme in 5 Stunden.
- Algorithmische Probleme von einfach mit knallhart. Lösung ist euer Code.
- Nur ein Computer pro Team; kein Internet.
- Beispielprobleme (Wintercontest 2024).
Was ist der ICPCP?
Der International Collegiate Programming Contest (ICPC) ist ein jährlich ausgetragener globaler Wettbewerb für Studierende, bei dem Teams im Programmieren gegeneinander antreten. Die Aufgaben beim ICPC umfassen eine Vielzahl von Herausforderungen, die von komplexen Implementierungsproblemen über das Entwerfen und Implementieren von Algorithmen und Datenstrukturen bis hin zu Themen der algorithmischen Geometrie und Mathematik reichen. Bei jeder Aufgabe besteht das Ziel darin, ein Programm zu entwickeln, das Eingaben gemäß einer vorgegebenen Spezifikation verarbeitet und schnell sowie fehlerfrei korrekte Ausgaben erzeugt.
Nimm an unseren Treffen teil
Wir treffen uns jede Woche: sich gegenseitig bei Problemen helfen, Tricks austauschen und was bei letzten Wettbewerben passiert ist. Das Treffen ist für jeden offen. Komm einfach vorbei! Wir haben auch einen Discord. Mehr Infos
Aufgaben
Aufgaben sind rein algorithmisch. In einem Text wird ein Problem geschildert und wie die Lösung auszusehen hat. Als Lösung wird ein Programm erwartet, das jenes löst.
Nach dem Einreichen eurer Lösung wird der Code automatisiert bei mehreren Fällen getestet: einerseits muss die ausgegeben Antwort korrekt sein und andererseits muss der Code schnell genug sein.
Die Constraints auf Eingabegröße und Laufzeit sind angegeben.
Ein regulärer Wettbewerb besteht aus ein Dutzend Aufgaben und dauert fünf Stunden.
Beispielprobleme mit Lösungen aus dem Wintercontest 2024.
Teams
Die Teams bestehen aus drei Teilnehmer:innen, die an einem Rechner die Aufgaben lösen. Entsprechend sind nicht nur gute Programmierskills und algorithmisches Know-How nötig, sondern auch gutes Zeitmanagement und Teamwork. Als einzige Hilfstmittel sind Stift und Papier erlaubt. Internetzugang ist natürlich verboten. Als Programmiersprachen werden üblicherweise C++ oder Java verwendet, die Nutzung von Python, C oder Haskell ist auch erlaubt. Für die Teilnehmer an offiziellen ICPC-Wettbewerb gelten die ICPC-Regeln. Insbesondere müssen die Studis sich in den ersten 4 Jahren ihres Studiums befinden.
Wettbewerbe
Der offizielle ICPC Wettbewerb findet jährlich statt. Der Wettbewerb zieht viele Teams an, entsprechend ist er gestaffelt in die Regionals (Nord-West-Europa), neuerdings Superregionals (Europa) und die World Finals. Die RWTH gehört zum Bereich NWERC und kann üblicherweise zwei oder drei Teams dorthin entsenden.
Die Teilnahme an den deutschlandweiten Wintercontest im Winter und GCPC im Sommer ist für jeden offen. Der perfekte Einstieg für alle Interessierte und Ethusiasten!
Wie kann ich loslegen?
Du kannst zu unseren Treffen und auf den Discord kommen. Natürlich musst du nicht darauf warten, sondern kannst direkt loslegen. Zum Trainieren empfehlen wir Codeforces. Dort kann man solo an regelmäßig stattfindenden Wettbewerben teilnehmen (live oder zeitversetzt; Beginner am besten Div. 3/4) oder einzelne Aufgaben lösen. Sonst gibt es noch unsere Seite mit Tipps und Tricks zum Competitive Programming.