April 15, 2018 The Complete Guide to Topcoder Marathon Matches – Curated Just for You!
How it All Started Where can I find Marathon Matches? How do I practice the old matches?
Marathon Matches (MMs) have a long history back to 2005 when only SRMs existed on Topcoder. It came as an idea from one of our first community members Running Wild to have a ‘week long contests’ for algorithm problems. Even if it started from the same model, the marathon match competition was different and it still is then the SRMs. For one, the competition duration and code length are much longer for MMs (1-2 weeks with 5000 lines of code) then Algorithm competitions (1.5 hours of 20-300 lines). The Algorithm competitions are usually supposed to produce the best possible solutions to a problem, while on MMs there are no exact solutions and many code optimizations can be done.
The ABC’s of MM
Before you jump into a marathon match competition, you should know that the competitors are not allowed to discuss solutions until the challenge is over. Also that there is a time and memory limit for the challenge and that you’ll be getting a visualizer to test your solution locally. There are more details to know what you can find here. To see the upcoming events just check our calendar.
If you are thinking about all the years of problems in the Marathon Matches and want to practice some, you can go here and pick up any problem you wish and download it’s local tester and sample submissions to test them locally. Not only that, but you can also see the leaderboard for those challenges, look for their forum links and take a look at Post Your Approach thread. Sometimes solutions of all the submitters are available in the forums for most of the matches. Nickolas has put together a quick cheat sheet on how to find the most useful information and how to approach problems.
Once you’re ready to start, do not hurry into jumping to code the task immediately. Rather plan it on paper first, play with the visualizer, and build upon better solutions. One of the most common methods you have to be aware of to do good in MMs is to use the Simulated Annealing (SA) metaheuristic. It has a very fast evaluation of neighbour states a transition to the neighbour state is relatively fast compared to the other methods and there’s no need to store many different states, a single one is enough. More details on the basics procedure you can find here.
Topcoder has great marathon match veterans including wleite, daiver19, and walrus71. Most of them have full-time jobs and compete to learn or stay challenged.
Wleite (Wladimir Leite) has been a Topcoder member since 2003. He has participated in 10 onsite finals, in Marathon and Algorithm tracks and is a computer forensics expert. He joins the MMs because he keeps learning and sometimes those things turn out to be useful in other applications. Time management is also critical when juggling with work and family so he runs the tests in the time he’s away from the computer. Read more about him here.
Daiver19 (Dmitriy Kozhevin) is working at Google as a data processing analyst, which usually involves coding with many real-world restrictions and requirements, so marathons give him the freedom to focus on algorithm and optimization, which he finds refreshing. Many members would like to have the same start like him, he started blue and immediately turned yellow and stayed like this for 8 years so Dmitry is suggesting everyone to try to perform consistently and aim to become better.
walrus71 (Gődény Balázs) is a marathoner for 10 years and a copilot for sponsored matches. He participates in marathons because he likes to keep himself intellectually challenged. He is working as a freelance programmer and has great tips on how to deal with clients and estimate projects costs. He talks here about how it is to prepare a sponsored contest from start to finish, the responsibilities involved and the amount of effort a copilot should put in.
Besides being a competitor and a copilot, a marathon matcher can also become a problem writer. One of the best problem writers is Nickolas (Mariia Mykhailova) – a member since 2005, who has over 50 published Marathon tasks and a dozen prepared SRM/Algorithm competitions in more than 10 years of writing. She finds writing more interesting than participation and she relates that when she starts writing a task for a Marathon competition, she usually has a general idea of a way to approach the problem, but the competitors surprise her easily. Read more on how she sees the marathon competitions as a mind sport. Last year she celebrated the 10 years of writing anniversary, she shared some problems that were special for her.
Besides online competition, if you qualify for TCO you can also get the live experience which is much better. Meeting the other competitors, connecting with admins and sponsors, can be a life-changing game. To get there, you have to win TCO points from the 4 Marathon Match Rounds. For some, it might sound hard, but wleite, one of our best marathon matcher is showing us that learning is part of the experience and that makes it more fun.
Check below posts to see the analysis of the TCO17 Marathon Rounds and Final:
TCO17 Marathon Round 1: An Analysis
TCO17 Marathon Round 2: An Analysis
TCO17 Marathon Round 3: Time To Apply Your Skills
TCO Marathon Finals
Looking for an opportunity to jump into MM track? Make sure you keep an eye on the upcoming MMs in the event calendar.