“Battle Live”: Finalja e ICPC në Porto

Sot Finalja e konkursit ndërkombëtar të programimit ICPC 2019 do të mbahet në qytetin portugez të Portos, në të do të marrin pjesë përfaqësues të Universitetit ITMO dhe ekipe të tjera nga universitetet në Rusi, Kinë, Indi, SHBA dhe vende të tjera. Le t'ju tregojmë më në detaje.

“Battle Live”: Finalja e ICPC në Porto
icpcnews /flickr/ CC BY / Foto nga finalet e ICPC-2016 në Phuket

Çfarë është ICPC

ICPC është një konkurs ndërkombëtar programimi mes studentëve. Ato janë mbajtur për më shumë se 40 vjet - finalja e parë unë kam qenë në vitin 1977. Përzgjedhja kryhet në disa faza. Universitetet ndahen sipas rajoneve (Evropë, Azi, Afrikë, Amerikë, etj.). Secila prej tyre pret faza të ndërmjetme, në veçanti gjysmëfinalet e Euroazisë Veriore u zhvillua në universitetin tonë. Fituesit e fazave rajonale marrin pjesë në finale.

Në ICPC, ekipeve prej tre pjesëmarrësish u kërkohet të zgjidhin një numër problemesh duke përdorur një kompjuter (jo të lidhur në internet). Kështu, përveç aftësive programuese, testohen edhe aftësitë e punës në grup.

Ekipet e Universitetit ITMO kanë fituar çmimin kryesor të ICPC shtatë herë. Ky është një rekord absolut që ka qëndruar për shumë vite. Ata do të përplasen në betejën për Kupën ICPC 2019 135 grupe nga i gjithë planeti. Universiteti ITMO përfaqësohet këtë vit nga Ilya Poduremennykh, Stanislav Naumov и Roman Korobkov.

Si do të zhvillohet finalja?

Gjatë garës, ekipet do të marrë një kompjuter për tre persona. Ai drejton Ubuntu 18.04 dhe ka të para-instaluar vi/vim, gvim, emacs, gedit, geany dhe kate. Ju mund të shkruani programe në Python, Kotlin, Java ose C++.

Kur një ekip zgjidh një problem, ai ia përcjell atë serverit të testimit, i cili vlerëson kodin. Pjesëmarrësit nuk e dinë se çfarë testesh po kryen makina. Nëse të gjithë janë të suksesshëm, ekipi merr pikë bonus. Përndryshe, krijohet një gabim dhe studentët dërgohen për të korrigjuar kodin.

Sipas rregullave të ICPC-së, fiton ekipi që zgjidh më shumë probleme. Nëse ka disa skuadra të tilla, atëherë fituesi përcaktohet nga koha më e vogël e penalltisë. Pjesëmarrësit marrin minuta penallti për çdo problem të zgjidhur. Numri i minutave është i barabartë me kohën nga fillimi i konkursit deri në pranimin e detyrës nga serveri i testimit. Nëse skuadra gjen një zgjidhje, atëherë merr njëzet minuta të tjera penallti për çdo përpjekje të pasaktë për ta kaluar atë.

“Battle Live”: Finalja e ICPC në Porto
icpcnews /flickr/ CC BY / Foto nga finalet e ICPC-2016 në Phuket

Shembuj задач

Objektivat e kampionatit kërkojnë koordinim dhe përqendrim të ekipit. Përveç kësaj, ata testojnë njohuritë e algoritmeve individuale matematikore. Këtu është një shembull i një detyre që iu ofrua pjesëmarrësve të ICPC 2018:

Në tipografi, ekziston një term "lum" - kjo është një sekuencë e hapësirave midis fjalëve, e cila formohet nga disa rreshta teksti. Një ekspert i caktuar i lumenjve (në të vërtetë) dëshiron të botojë një libër. Ai dëshiron që lumenjtë më të gjatë tipografikë të "formohen" në faqe kur printohen me fontin monospace. Pjesëmarrësit duhej të përcaktonin gjerësinë e fushave në të cilat do të plotësohej ky kusht.

Në hyrje, programi mori një numër të plotë n (2 ≤ n ≤ 2), i cili përcakton numrin e fjalëve në tekst. Më pas, teksti u fut: fjalët në një rresht ndaheshin me një hapësirë ​​dhe nuk mund të përbëheshin nga më shumë se 500 karaktere.

Në dalje, programi duhej të tregonte gjerësinë e fushave në të cilat formohet "lumi" më i gjatë dhe gjatësia e këtij lumi.

Lista e plotë kthehet që nga viti i kaluar dhe gjithashtu zgjidhjet e tyre me shpjegime mund të gjendet në faqen e internetit të ICPC. Po aty. ka një arkiv me teste, të cilave u "ekspozuan" programet e pjesëmarrësve.

Kështu që sot pasdite në faqen e kampionatit dhe YouTube-kanale Nga vendi i ngjarjes do të ketë transmetim të drejtpërdrejtë. I disponueshem tani regjistrimet para shfaqjes.

Çfarë tjetër kemi në blogun në Habré:

Burimi: www.habr.com

Shto një koment