„Battle Live“: ICPC-Finale in Porto

heute Das Finale des internationalen Programmierwettbewerbs ICPC 2019 findet in der portugiesischen Stadt Porto statt. Daran werden Vertreter der ITMO-Universität und anderer Teams von Universitäten in Russland, China, Indien, den USA und anderen Ländern teilnehmen. Lassen Sie uns es Ihnen genauer erzählen.

„Battle Live“: ICPC-Finale in Porto
icpcnews /flickr/ CC BY / Fotos vom ICPC-2016-Finale in Phuket

Was ist ICPC?

ICPC ist ein internationaler Programmierwettbewerb unter Studierenden. Sie finden seit über 40 Jahren statt – das erste Finale bestanden im Jahr 1977. Die Auswahl erfolgt in mehreren Stufen. Die Universitäten sind nach Regionen unterteilt (Europa, Asien, Afrika, Amerika usw.). Jeder von ihnen ist Austragungsort von Zwischenrunden, insbesondere des Nordeurasischen Halbfinals fand an unserer Universität statt. Die Gewinner der regionalen Etappen nehmen am Finale teil.

Beim ICPC werden Teams aus drei Teilnehmern gebeten, eine Reihe von Problemen an einem Computer (nicht mit dem Internet verbunden) zu lösen. Somit werden neben Programmierkenntnissen auch Teamfähigkeiten geprüft.

Teams der ITMO-Universität haben sieben Mal den ICPC-Hauptpreis gewonnen. Das ist ein absoluter Rekord, der schon seit vielen Jahren besteht. Sie werden im Kampf um den ICPC Cup 2019 aufeinandertreffen 135 Gruppen aus der ganzen Welt. Die ITMO University wird dieses Jahr vertreten durch Ilja Poduremennych, танислав Наумов и Roman Korobkow.

Wie wird das Finale stattfinden?

Während des Wettbewerbs Teams erhält einen Computer für drei Personen. Es läuft unter Ubuntu 18.04 und hat vi/vim, gvim, emacs, gedit, geany und kate vorinstalliert. Sie können Programme in Python, Kotlin, Java oder C++ schreiben.

Wenn ein Team ein Problem löst, leitet es es an den Testserver weiter, der den Code auswertet. Die Teilnehmer wissen nicht, welche Tests die Maschine durchführt. Sind alle erfolgreich, erhält das Team Bonuspunkte. Andernfalls wird ein Fehler generiert und die Schüler werden zur Korrektur des Codes geschickt.

Gemäß den ICPC-Regeln gewinnt das Team, das die meisten Probleme löst. Gibt es mehrere solcher Teams, so wird der Sieger anhand der kleinsten Strafzeit ermittelt. Für jedes gelöste Problem erhalten die Teilnehmer Strafminuten. Die Anzahl der Minuten entspricht der Zeit vom Beginn des Wettbewerbs bis zur Annahme der Aufgabe durch den Testserver. Wenn das Team eine Lösung findet, erhält es für jeden falschen Passversuch weitere zwanzig Minuten Strafe.

„Battle Live“: ICPC-Finale in Porto
icpcnews /flickr/ CC BY / Fotos vom ICPC-2016-Finale in Phuket

Beispielprobleme

Die Ziele der Meisterschaft erfordern Teamkoordination und Konzentration. Darüber hinaus prüfen sie Kenntnisse über einzelne mathematische Algorithmen. Hier ist ein Beispiel für eine Aufgabe, die den Teilnehmern des ICPC 2018 angeboten wurde:

In der Typografie gibt es den Begriff „Fluss“ – dabei handelt es sich um eine Abfolge von Leerzeichen zwischen Wörtern, die aus mehreren Textzeilen gebildet wird. Ein gewisser Flussexperte (eigentlich) möchte ein Buch veröffentlichen. Er möchte, dass sich beim Drucken in monospaced Schriftarten die längsten typografischen Flüsse auf der Seite „bilden“. Die Teilnehmer mussten die Breite der Felder bestimmen, bei der diese Bedingung erfüllt wäre.

Am Eingang erhielt das Programm eine Ganzzahl n (2 ≤ n ≤ 2), die die Anzahl der Wörter im Text bestimmt. Als nächstes wurde der Text eingegeben: Wörter in einer Zeile wurden durch ein Leerzeichen getrennt und durften nicht mehr als 500 Zeichen umfassen.

Bei der Ausgabe musste das Programm die Breite der Felder anzeigen, auf denen der längste „Fluss“ entsteht, und die Länge dieses Flusses.

Vollständige Liste zurück seit letztem Jahr und auch Lösungen dazu mit Erläuterungen finden Sie auf der ICPC-Website. Ebenda. Es gibt ein Archiv mit Tests, dem die Programme der Teilnehmer „ausgesetzt“ wurden.

Also heute Nachmittag auf der Meisterschaftswebsite und YouTube-Kanal Es wird eine Live-Übertragung vom Tatort geben. Jetzt verfügbar Aufnahmen vor der Show.

Was wir sonst noch auf dem Blog über Habré haben:

Source: habr.com

Kommentar hinzufügen