#TuentiChallenge7: Show me the numbers

Jose Maria Palacio
Making Tuenti
Published in
3 min readMay 22, 2017

--

7 Days

158,237 Lines of code

2,736 Attempts to solve a problem

2,051 Problems correctly solved

1,490 People registered

592 People solving at least one problem

Participants

This year, the Tuenti Challenge had 15 problems instead of the usual 20, but that didn’t make it any easier!

592 people passed the first problem and only 4 of them reached the final problem. However, this year no one was able to solve it! In fact, the maximum number of problems correctly solved by a contestant was 13.

Problem 5 was the first daemon based and tricky problem, making it a major hurdle for most people; a lot of contestants got stuck there and chose to skip it.

There were 2 stoppers this year (problems with less correct solves than the next one); problem 6, which was the first non-trivial algorithmic problem, and problem 9, which had a very tricky solution. What’s more, a lot of people failed problem 11, which was also algorithmic.

As you can, see the wrong submissions rate for these problems is very high compared to the rest.

Languages

As is the case every year, a lot of different languages have been used to solve the problems, a total of 29 languages used this year. We already talked about the most popular ones in the sneak peek, but the rest of them are also interesting. You can find some really unique languages in there!

Pascal was only used in one solution, while there were two solutions in AWK and TypeScript and three in Visual Basic. Special mention is also due to two of the Visual Basic solutions, which were embedded inside a Microsoft Access Database (only God knows why).

The following graph shows the evolution of the most used languages on every challenge (excluding challenge 5, where most people submitted plain text with instructions):

As you can see Python dominates in almost all the problems. Some special cases are challenge 7, where a lot of people used JavaScript as it was a natural language for the proposed problem. In challenge 13, the statement provided an algorithm in C++, so most solutions are in C++. You can also see that one of the top contestants almost exclusively used Rust, so the language is more visible as we reach the later problems.

Lines of code

The shortest solution this year (excluding the ones from problem 5), is a 154 bytes long code in Python 2, which solves the first problem.

The longest solution is a Python code for challenge 10, which includes the dates and secrets extracted from the repository hardcoded in the code itself. These make the file 3655 lines long. If we count external files, the winner is a solution in Scala which includes a file with Unicode data, which makes it 30592 lines long.

The average lines of code per solution for the most used languages are shown below:

This year’s averages are significantly lower than last year’s. This is likely due to the fact that the first 4 problems, which obviously have the most solutions, were shorter to code than the ones in past contests. You can also see that Rust appears at the top of the graph, as almost nobody used it except for one of the contestants who reached the final problem.

--

--