“Battle Live”: Final do ICPC en Porto

Hoxe Na cidade portuguesa de Porto celebraranse as finais do concurso internacional de programación ICPC 2019, nela participarán representantes da ITMO University e doutros equipos de universidades de Rusia, China, India, EEUU e outros países. Contámosche con máis detalle.

“Battle Live”: Final do ICPC en Porto
icpcnews /flickr/ CC BY / Fotos das finais do ICPC-2016 en Phuket

Que é ICPC

ICPC é un concurso internacional de programación entre estudantes. Levan máis de 40 anos celebrando - a primeira final pasou alá polo ano 1977. A selección realízase en varias etapas. As universidades están divididas por rexións (Europa, Asia, África, América, etc.). Cada un deles acolle fases intermedias, en particular as semifinais do norte de Eurasia tivo lugar na nosa universidade. Nas finais participan os gañadores das fases autonómicas.

No ICPC, pídeselles a equipos de tres participantes que resolvan unha serie de problemas utilizando un ordenador (non conectado a Internet). Así, ademais das habilidades de programación, tamén se pon a proba as habilidades de traballo en equipo.

Os equipos da ITMO University gañaron o premio principal do ICPC sete veces. Este é un récord absoluto que leva moitos anos. Enfrontaranse na batalla pola Copa ICPC 2019 135 grupos de todo o planeta. A Universidade ITMO está representada este ano por Ilya Poduremennykh, Stanislav Naumov и Román Korobkov.

Como terá lugar a final?

Durante a competición, equipos recibirá un ordenador para tres persoas. Corre Ubuntu 18.04 e ten vi/vim, gvim, emacs, gedit, geany e kate preinstalados. Podes escribir programas en Python, Kotlin, Java ou C++.

Cando o equipo resolve un problema, envíao ao servidor de probas, que avalía o código. Os participantes non saben que probas está a realizar a máquina. Se todos eles teñen éxito, o equipo recibe puntos de bonificación. En caso contrario, xérase un erro e envíase aos alumnos para corrixir o código.

Segundo as regras do ICPC, gaña o equipo que resolve máis problemas. Se hai varios equipos deste tipo, entón o gañador determínase polo tempo de penalización máis pequeno. Os participantes reciben minutos de penalización por cada problema resolto. O número de minutos é igual ao tempo que transcorre desde o inicio da competición ata a aceptación da tarefa polo servidor da proba. Se o equipo atopa unha solución, recibe outros vinte minutos de penalización por cada intento incorrecto de pasalo.

“Battle Live”: Final do ICPC en Porto
icpcnews /flickr/ CC BY / Fotos das finais do ICPC-2016 en Phuket

Exemplos de tarefas

Os obxectivos do campionato requiren a coordinación e concentración do equipo. Ademais, proban o coñecemento de algoritmos matemáticos individuais. Aquí tes un exemplo dunha tarefa que se ofreceu aos participantes do ICPC 2018:

En tipografía, hai un termo "río": esta é unha secuencia de espazos entre palabras, que se forma a partir de varias liñas de texto. Un certo experto en ríos (de verdade) quere publicar un libro. Quere que os ríos tipográficos máis longos "se formen" na páxina ao imprimir con letra monoespaciada. Os participantes tiveron que determinar o ancho dos campos nos que se cumpriría esta condición.

Na entrada, o programa recibiu un número enteiro n (2 ≤ n ≤ 2), que determina o número de palabras no texto. A continuación, introduciuse o texto: as palabras nunha liña estaban separadas por un espazo e non podían conter máis de 500 caracteres.

Na saída, o programa tiña que mostrar o ancho dos campos nos que se forma o "río" máis longo e a lonxitude deste río.

Volver a lista completa dende o ano pasado e tamén solucións a eles con explicacións pódese atopar na páxina web do ICPC. Ibíd. hai un arquivo con probas, ao que foron "expostos" os programas dos participantes.

Así que esta tarde na páxina web do campionato e Canle de YouTube Haberá unha retransmisión en directo dende a escena. Dispoñible agora gravacións previas ao espectáculo.

Que máis temos no blog de Habré:

Fonte: www.habr.com

Engadir un comentario