"Battle Live": ICPC-final i Porto

I dag Finalen i den internationella programmeringstävlingen ICPC 2019 kommer att hållas i den portugisiska staden Porto. Representanter för ITMO University och andra lag från universitet i Ryssland, Kina, Indien, USA och andra länder kommer att delta i den. Låt oss berätta mer i detalj.

"Battle Live": ICPC-final i Porto
icpcnews /flickr/ CC BY / Bilder från ICPC-2016-finalerna i Phuket

Vad är ICPC

ICPC är en internationell programmeringstävling bland studenter. De har hållits i över 40 år – den första finalen jag var redan 1977. Urvalet görs i flera steg. Universiteten är indelade efter region (Europa, Asien, Afrika, Amerika, etc.). Var och en av dem är värd för mellanstadier, i synnerhet de norra eurasiska semifinalerna ägde rum på vårt universitet. Vinnarna av de regionala etapperna deltar i finalen.

På ICPC uppmanas team om tre deltagare att lösa ett antal problem med en dator (ej ansluten till Internet). Utöver programmeringskunskaper testas alltså även lagarbete.

ITMO University team har vunnit ICPC huvudpris sju gånger. Detta är ett absolut rekord som har stått sig i många år. De kommer att stöta sig i kampen om ICPC Cup 2019 135 grupper från hela planeten. ITMO University representeras i år av Ilya Poduremennykh, Stanislav Naumov и Roman Korobkov.

Hur kommer finalen att gå till?

Under tävlingen, lag kommer att få en dator för tre personer. Den kör Ubuntu 18.04 och har vi/vim, gvim, emacs, gedit, geany och kate förinstallerade. Du kan skriva program i Python, Kotlin, Java eller C++.

När teamet löser ett problem skickar det vidare det till testservern som utvärderar koden. Deltagarna vet inte vilka tester maskinen utför. Om alla lyckas får laget bonuspoäng. Annars genereras ett fel och eleverna skickas för att rätta koden.

Enligt ICPC:s regler vinner det lag som löser flest problem. Om det finns flera sådana lag bestäms vinnaren av den minsta strafftiden. Deltagarna får straffminuter för varje löst problem. Antalet minuter är lika med tiden från tävlingens start till att testservern accepterar uppgiften. Om laget hittar en lösning får det ytterligare tjugo minuters straff för varje felaktigt försök att passera den.

"Battle Live": ICPC-final i Porto
icpcnews /flickr/ CC BY / Bilder från ICPC-2016-finalerna i Phuket

Provproblem

Målen för mästerskapet kräver lagkoordination och koncentration. Dessutom testar de kunskaper om individuella matematiska algoritmer. Här är ett exempel på en uppgift som erbjöds ICPC 2018-deltagare:

I typografi finns det en term "flod" - det här är en sekvens av mellanslag mellan ord, som är bildad av flera textrader. En viss flodexpert (på riktigt) vill ge ut en bok. Han vill att de längsta typografiska floderna ska "formas" på sidan när man skriver ut i monospace. Deltagarna var tvungna att bestämma bredden på fälten där detta villkor skulle uppfyllas.

Vid ingången fick programmet ett heltal n (2 ≤ n ≤ 2 500), som bestämmer antalet ord i texten. Därefter skrevs texten in: ord på en rad var åtskilda med ett mellanslag och fick inte bestå av mer än 80 tecken.

Vid utgången var programmet tvungen att visa bredden på fälten där den längsta "floden" bildas, och längden på denna flod.

Fullständig lista tillbaka sedan förra året och också lösningar på dem med förklaringar finns på ICPC:s webbplats. Ibid. det finns ett arkiv med tester, som deltagarnas program "exponerades".

Så i eftermiddag på mästerskapets hemsida och Youtube-kanal Det blir en livesändning från platsen. Tillgänglig nu inspelningar före showen.

Vad har vi mer på bloggen på Habré:

Källa: will.com

Lägg en kommentar