Aujourd'hui , la ville portugaise de Porto accueillera la finale des concours internationaux de programmation ICPC 2019. Des représentants de l'Université ITMO et d'autres équipes d'universités de Russie, de Chine, d'Inde, des États-Unis et d'autres pays y participeront. Nous le dirons plus en détail.
icpcnews / Flickr / CC BY / Photo de la finale de l'ICPC-2016 à PhuketQu'est-ce que l'ICPC?
ICPC est un concours international de programmation étudiante. Ils se déroulent depuis plus de 40 ans - la première finale
a eu lieu en 1977. La sélection s'effectue en plusieurs étapes. Les universités sont réparties par région (Europe, Asie, Afrique, Amérique, etc.). Dans chacun d'eux, des étapes intermédiaires sont organisées, en particulier, la demi-finale de l'Eurasie du Nord
a eu lieu dans notre université . Les vainqueurs des étapes régionales participent à la finale.
À l'ICPC, des équipes de trois participants utilisant un ordinateur (non connecté à Internet) sont invitées à résoudre un certain nombre de problèmes. Ainsi, en plus des compétences en programmation, les compétences en travail d'équipe sont également testées.
Les équipes de l'ITMO University ont remporté le premier prix ICPC à sept reprises. Il s'agit d'un record absolu détenu depuis de nombreuses années. Dans la bataille pour la Coupe ICPC 2019,
135 équipes du monde entier s'affronteront . Cette année, l'Université ITMO est représentée par
Ilya Podurerenykh ,
Stanislav Naumov et
Roman Korobkov .
Comment se déroulera la finale
Pendant la compétition, les équipes
recevront un ordinateur pour trois. Il fonctionne sur Ubuntu 18.04 et possède des éditeurs préinstallés vi / vim, gvim, emacs, gedit, geany et kate. Vous pouvez écrire des programmes en Python, Kotlin, Java ou C ++.
Lorsque l'équipe résout le problème, elle l'envoie au serveur de test, qui évalue le code. Les participants ne savent pas quel type de tests la machine effectue. Si tous réussissent, l'équipe reçoit des prix. Sinon, une erreur est générée et les étudiants sont envoyés pour ajuster le code.
Selon les règles de l'ICPC, l'équipe qui a résolu la plupart des tâches gagne. S'il y a plusieurs équipes de ce type, le vainqueur est déterminé par le moins de temps de pénalité. Les participants reçoivent des minutes de pénalité pour chaque tâche terminée. Le nombre de minutes est égal au temps écoulé entre le début de la compétition et l'acceptation de la tâche par le serveur de test. Si l'équipe trouve une solution, elle reçoit encore vingt minutes de pénalité pour chaque tentative incorrecte de la passer.
icpcnews / Flickr / CC BY / Photo de la finale de l'ICPC-2016 à PhuketExemples de tâches
Les objectifs du championnat exigent que les équipes se coordonnent et se concentrent. De plus, ils testent la connaissance des algorithmes mathématiques individuels. Voici un exemple de tâche qui a été proposée aux participants du CIPC 2018:
Dans l'imprimerie, le terme «rivière» existe - c'est une séquence d'espaces entre les mots, qui est formée de plusieurs lignes de texte. Un expert des rivières (le présent) veut sortir un livre. Il souhaite que les fleuves typographiques les plus longs se «forment» lorsqu'ils sont imprimés dans une police à espacement fixe sur la page. Les participants devaient déterminer la largeur des champs auxquels cette condition serait remplie.
En entrée, le programme a reçu un entier n (2 ≤ n ≤ 2 500), qui détermine le nombre de mots dans le texte. De plus, le texte était entré: les mots sur une ligne étaient séparés par un espace et ne pouvaient pas comprendre plus de 80 caractères.
A la sortie, le programme devait montrer la largeur des champs où se forme la "rivière" la plus longue, et la longueur de cette rivière.
La liste complète est en retard par rapport à l'année dernière, ainsi que des
solutions avec des explications peuvent être trouvées sur le site Web du CIPC. Il existe également une
archive contenant des tests auxquels les programmes des participants ont été «soumis».
Donc, aujourd'hui dans l'après-midi sur le site Web du championnat et sur la chaîne YouTube, il y aura une diffusion en direct de la scène. Des enregistrements d'avant-spectacle sont maintenant disponibles.
Qu'avons-nous d'autre dans le blog sur Habré: