When to win is your profile

Hello! My name is Lida, and I have been running programming competitions for 12 years. (Hello, Lida!) This year I joined the VKontakte Team and now oversee the VK Cup. For 5 seasons it was a sports programming only championship. But the time has come for major changes.







We removed most of the restrictions, canceled the pair format and added three new directions. VK Cup 2019 is an online competition for Olympiad programmers, mobile developers, designers and machine learning professionals with a grand offline final in St. Petersburg.







In this article I will tell you what we have come up with new, and my colleagues will give recommendations for the participants. Registration for VK Cup is open at vk.cc/cup until December 4 - there is only a week left! All the details about the tracks and stages are under the cut.













VKontakte for the Olympics



Many IT companies hold their competitions - this is a way to talk about interesting tasks that they face. The VKontakte team was one of the first in 2012 to organize its own tournaments. The developers themselves initiated them - the winners of international programming competitions have always worked at VK. Four world champions in the Team now.







The engines that developers create are the foundation of VKontakte. It is in them that efficiency is especially important, on the count - every millisecond. How to achieve maximum performance? Know deeply the algorithms and data structures, and also fit into the given memory limits. It is such high requirements that are imposed on the code of VK Cup participants.







Since 2012, the format has changed a little, but the essence has remained the same: participants from 14 to 23 years old competed in the Olympiad programming, alone or in teams of two people. If you twice reached the final, then you can’t participate again. It's time to change.







Down restrictions



VK Cup 2019 will be held in solo format. We remove the upper bar for age and the limit on the number of finals - so this year the best participants of past years and experienced specialists will be able to return to the championship. But most importantly - in addition to sports programming, it will be possible to compete in machine learning, mobile development and design. You can participate in several tracks at the same time - if, of course, there is enough time.







Each track will consist of three rounds:







  1. Qualification will be held online from December 6 to 16 and will be open to all. The next round will be the 256 best participants in each track.
  2. We will also conduct the qualifying stage online - in February 2020. Here, participants will find more complex tasks and a shorter time. 40 authors of the most successful decisions in each track will go to the finals.
  3. The final will be held in St. Petersburg in April 2020. In the full-time confrontation, participants will compete for the main prize of each track - 524,288 rubles (2 ^ 19).


Track Engine



Qualification. Participants will solve problems on the Codeforces platform in any convenient programming language. You can even solve problems with your hands, taking apart each individual test.

Qualifying stage. It will be important to solve each problem as soon as possible in order to score more points and get an invitation to the finals.

The final. Participants will compete according to the standard Codeforces rules: they will be able to get additional points if they find errors in the decisions of other participants.







Tips from Boris Minaev



Borya is the ICPC 2015 programming world champion, 2nd place in the VK Cup 2015, head of the VKontakte database team.









Track Mobile



Qualification. We will test the knowledge of simple algorithms that are often needed to implement standard screens of mobile applications, as well as the theoretical knowledge of our mobile platform. The next round will be 128 participants from each platform.

Qualifying stage. It will be necessary to correctly prioritize. Which is better - to be in time as much as possible or to work through each task as carefully as possible? The finals will include the top 20 developers.

The final. Each participant will have to demonstrate their product skills: come up, implement and submit a new project using only the screens developed in the previous round.







Tips from Oleg Smirnov



Oleg leads the Android Team VKontakte and composed tasks for the VK Cup mobile development track.









Track Design



Qualification. We will make sure that the participants can not only develop individual design elements, but also notice errors.

Qualifying stage. We suggest developing interfaces for individual VKontakte elements or independent services. It will be important to find a compromise between the scale of the idea and the development time.

The final. Participants will need to talk about their idea and present the design.







Tips from Alexei Mazelyuk



Lyosha is a senior VK designer and winner of the VK Designers contest in 2015 and 2017.









Track ML



Qualification. As an answer, you will need to load the processed data, and each decision will be evaluated using a predefined metric. Data from the task can be processed offline or even manually.

Qualifying stage. The code for the approach that the participants will develop will be uploaded to the testing system - all solutions will be tested on the same infrastructure, in conditions of limited computing resources.

The final. Participants will solve a difficult practical task.







Tips from Danila Savenkova



Dania entered the top Mercedes contestants at kaggle. He is also a senior VK programmer.












If you still have questions about VK Cup, write to VK VK's private messages: vk.com/cup . There you can find the rules and monitor the progress of the championship.







I hope you enjoy the new VK Cup and we will meet with some readers at the finals in St. Petersburg. Good luck to all!








All Articles