## Monday, January 25, 2016

### A multiple language week

The New Year week contained a few topical contests, the first of which was Good Bye 2015 at Codeforces (problems, results, top 5 on the left). Congratulations to Gennady on wrapping up 2015 with another victory, to go with all other amazing victories he has achieved last year!

The hardest problem H required quite a bit of creativity to solve, but had a very simple problem statement: you're given a list of all edges in a tree with n vertices, n is at most 200000. Each edge is given by the numbers of its vertices, but the numbers are not given directly - instead, you just now the number of digits in each number. For example, the edge "123 45" would be given as "??? ??". Your goal is to replace the question marks by digits, such that each number has no leading zeros, and the edges form a valid tree. How would you approach this one?

SnarkNews New Year Blitz contest was another traditional contest for this week (results, top 5 on the left), with specific New Year-themed rules: it runs from a few hours before the New Year to a few hours after it, and the penalty time for each problem is counted as the distance from the New Year - so if you solve a problem before the New Year, it might make sense to wait before submitting it. Of course, submitting exactly at New Year usually clashes with the New Year celebrations themselves, so this contest usually attracts the most devoted participants :) This year an additional rule has complicated the matters: one could earn a -100 penalty minute bonus by submitting a solution in a different programming language.

Congratulations to ariacas on solving all 12 problems and submitting most of them right at New Year, and to Xellos and Alexander Udalov on successfully using 10 different languages each - an amazing accomplishment!

I'm sorry for the interruption in my posts, caused by some pretty busy weeks at work and amazing winter weekends - winter is my favorite season, and I've been doing some cross-country skiing instead of updating this blog. I hope to get back to the current week soon, so please come back for updates!