Live Battle: Porto ICPC Finals

    Today , the Portuguese city of Porto will host the final of the international ICPC 2019 programming competition. ITMO University representatives and other teams from universities in Russia, China, India, the USA and other countries will take part in it. We will tell in more detail. icpcnews / Flickr / CC BY / Photo from the final of the ICPC-2016 in Phuket

    What is ICPC?

    ICPC is an international student programming competition. They have been held for more than 40 years - the first final was held back in 1977. The selection is carried out in several stages. Universities are broken down by region (Europe, Asia, Africa, America, etc.). In each of them, intermediate stages are arranged, in particular, the semifinal of Northern Eurasia was held at our university . Winners of the regional stages take part in the final.

    At ICPC, teams of three participants using one computer (not connected to the Internet) are invited to solve a number of problems. Thus, in addition to programming skills, teamwork skills are also tested.

    ITMO University teams have won the ICPC top prize seven times. This is an absolute record that has been holding for many years. In the battle for the ICPC 2019 Cup, 135 teams from all over the world will clash . This year ITMO University is represented by Ilya Podurerenykh , Stanislav Naumov and Roman Korobkov .

    How will the finals go

    During the competition, teams will receive one computer for three. It runs on Ubuntu 18.04 and has preinstalled editors vi / vim, gvim, emacs, gedit, geany and kate. You can write programs in Python, Kotlin, Java, or C ++.

    When the team solves the problem, it sends it to the testing server, which evaluates the code. Participants do not know what kind of tests the machine performs. If all of them are successful, the team receives prize points. Otherwise, an error is generated, and students are sent to adjust the code.

    According to the rules of ICPC, the team that has solved most of the tasks wins. If there are several such teams, then the winner is determined by the least penalty time. Participants receive penalty minutes for each completed task. The number of minutes is equal to the time from the start of the competition to the acceptance of the task by the test server. If the team finds a solution, then it receives another twenty minutes of a penalty for each incorrect attempt to pass it.

    icpcnews / Flickr / CC BY / Photo from the final of the ICPC-2016 in Phuket

    Examples of tasks

    The objectives of the championship require teams to coordinate and concentrate. Additionally, they test the knowledge of individual mathematical algorithms. Here is an example of a task that was offered to ICPC 2018 participants:

    In the printing house, the term “river” exists - this is a sequence of spaces between words, which is formed from several lines of text. An expert on rivers (the present) wants to release a book. He wants the longest typographic rivers to “form” when printed in a monospaced font on the page. Participants needed to determine the width of the fields at which this condition would be met.

    At the input, the program received an integer n (2 ≤ n ≤ 2 500), which determines the number of words in the text. Further, the text was entered: the words on one line were separated by one space and could not consist of more than 80 characters.

    At the exit, the program was supposed to show the width of the fields at which the longest "river" is formed, and the length of this river.

    The full list is backward from last year, as well as solutions to them with explanations can be found on the ICPC website. There is also an archive with tests to which participants' programs were “subjected”.

    So, today in the afternoon on the championship website and on the YouTube channel there will be a live broadcast from the scene. Pre-show recordings are now available .

    What else do we have in the blog on Habré:

    Also popular now: