#TuentiChallenge5: Show me the numbers

Publicado el 27/5/2015 por Alfredo Beaumont, Senior Software Engineer

604,800 seconds, 226,246 lines of code —this is more than a new line every 3 seconds—,  2,342 participants, 2,395 problems solved —nearly a hundred lines per participant, and per solved problem too!—, 1,687 problems solved correctly… but you want more details.

Participants

839 people passed the first challenge, but only 1 made it to the 19th one. Nobody was able to solve the last 2 problems during the contest this year, making it probably the toughtest one so far. There were three stoppers —problems with less solvers that the next one—. Kudos to you if you were one of the participants that didn’t hit the skip button when you faced challenges 12, 13 and 15.

Number of solvers per problem
 

The number of correctly solved problems is not as big as the amount of solved problems, since most problems included several incorrect solutions. The problems with the biggest fail rate were challenges 12, 11 and 17 (this last one only had 2 submissions).

Percentage of correctly solved problems

Time spent

The average time to solve each problem varies from nearly 2.5 hours (problem 18), to nearly 29 hours (problem 17). The average time invested per problem has been around 12.5 hours.

Average time spent per problem (in minutes)

Languages used

Most used ones can be seen here, but in total 28 different programming languages were used to solve, at least, one problem. The languages used to solve just one problem were AutoIt, AWK, Lua, OCaml, Pascal, TCL and even the esoteric language Aheui.

Not all languages were equally popular as the challenge evolved, as you can see in the following graph:

The evolution of most popular languages in the first 8 problems (percentage)

Lines of code

The shortest code —not considering those oneliners in problems that just echoed the solution— is a solution to the first problem in 2 lines of Python. The largest solution has a total number of 3396 lines of C# code, to solve problem 3, including external code that adds support for bignums.

Here they are the total number of lines by each language.

Total number of lines per language

Top 50 participants’ choice of language

Out of the 28 programming languages, only 12 were used by the 50 winners of the first phase.

If you didn’t make it this year, you may want to upgrade your tool belt with some new fancy languages from this set!

Top 50 selection of languages (percentage)

Average lines of code per solution and language among top 50

An interesting metric to measure the efficiency of a language is the number of lines needed to solve a task. As this may vary largely due to both problems and solvers, we have measured this metric among the top 50 winners. You can see both total number of lines per language and the average lines of code per solution and language.

Total lines per language in top50

Average lines per solution and language in top50

Siguenos