Please subscribe to the official Codeforces channel in Telegram via the link https://t.me/codeforces_official. ×

Nickolas's blog

By Nickolas, 6 years ago, translation, In English

TCO18 Marathon Round 1 RoadsAndJunctions started on May 9th and will run for a week. You can find it in the list of active contests. I am the writer :-)

This year the online part of the Marathon competition consists of 4 main rounds, each running for a week. The winner of each main round advances to the finals, and so do 8 participants who accumulated the most points across all main and lightning rounds. 150 competitors who accumulate the most points get t-shirts; given that each round awards points to top 50 places, it's quite possible that the t-shirt condition will transform into "top 50 in each round get t-shirts".

Full text and comments »

  • Vote: I like it
  • +51
  • Vote: I do not like it

By Nickolas, 6 years ago, In English

TCO18 Warsaw regional event will take place on May 12th. It will include an Algorithm competition round which will allow the top 10 scorers to advance to the Online Wildcard Round. You can read more about Algorithm rules here.

A lightning Marathon match MapRecoloring started on May 4th and will run for 3 days. It will be the first of TCO18 Marathon rounds, awarding TCO points for top 50 participants, as described here. It will also feature prizes for top 3 online participants and top 3 participants present at the regional event. I am the writer of the Marathon problem :-)

Full text and comments »

  • Vote: I like it
  • +20
  • Vote: I do not like it

By Nickolas, 6 years ago, translation, In English

952A - Quirky Quantifiers

JAPE riddle generator is a program which can produce question-answer puns. This problem has been inspired by one of the witticisms produced by it:

What do you call a quirky quantifier? An odd number.

All you had to do was to check whether the given "quantifier" was "quirky".

952B - A Map of the Cat

This problem was inspired by the awesome book "Surely You're Joking, Mr. Feynman!" In one of his stories Feynman asks a librarian to fetch him a map of a cat, having a zoological chart in mind. Of course, such a serious interpretation was unsuitable for my purposes :-)

This was a perfectly straightforward problem: just pet the cat!

Full text and comments »

  • Vote: I like it
  • +77
  • Vote: I do not like it

By Nickolas, 6 years ago, translation, In English

The contest is over; I hope you've enjoyed it :-) Editorial is here.


The 6th April Fools Day Contest will take place on Sunday April 1st. This is a joke competition in which solving the problem is often easier than figuring out what the actual task is.

This year I tried to make the problems less puzzling and more versatile. For example, almost all problems have a statement! And you won't need OEIS this time :-)

In this round you'll be given 7 weird problems and 2 hours to solve them. The contest will use ACM ICPC rules (no hacks, the standings are decided by the number of solved problems and penalty time earned on them), and it will be unrated. You can submit solutions in any language allowed by Codeforces. To get an idea of what the contest will look like, you can check out the contests of the past years: 2012, 2013, 2014, 2016, 2017.

As usual, to enjoy competing in this round you'll need a sense of humor compatible with mine! Good luck, and have fun!

Full text and comments »

Announcement of April Fools Contest 2018
  • Vote: I like it
  • +490
  • Vote: I do not like it

By Nickolas, 6 years ago, translation, In English

Marathon Match 100 SameColorPairs started on April 18th and will run for a week. You can find it in the list of active contests. I am the writer :-)

Upd: Topcoder has announced prizes for MM 100 participants:

  • Top 50 will get exclusive Marathon Match 100 t-shirt.
  • The "veterans" — members who registered at Topcoder in 2012 or earlier and have participated in at least one match since then — who place in top 50 will get limited-edition "vintage" t-shirts. Here "vintage" means a special design, not previously worn :-)
  • First three places with get $250, $150 and $75, respectively.
  • Top scoring "newbie" — a member who registered between January 1st and April 10th and have never participated in a Marathon before — will get $150.

Full text and comments »

  • Vote: I like it
  • +12
  • Vote: I do not like it

By Nickolas, 6 years ago, translation, In English

Marathon Match 99 BrokenSlotMachines started on March 14th and will run for a week. The problem was written by timmac.

Full text and comments »

  • Vote: I like it
  • +18
  • Vote: I do not like it

By Nickolas, 6 years ago, translation, In English

Marathon Match 98 PrincessesAndMonsters started on February 14th and will run for a week.

Ten participants (top 5 and 5 random) will get t-shirts! I am the writer :-)

Full text and comments »

  • Vote: I like it
  • +37
  • Vote: I do not like it

By Nickolas, 7 years ago, translation, In English

Marathon Match 97 PointsOnTheCircle started on January 24th and will run for a week. I am the writer :-)

Full text and comments »

  • Vote: I like it
  • +49
  • Vote: I do not like it

By Nickolas, 7 years ago, translation, In English

909A - Generate Login

The most straightforward solution is to generate all possible logins (by trying all non-empty prefixes of first and last names and combining them) and find the alphabetically earliest of them.

To get a faster solution, several observations are required. First, in the alphabetically earliest login the prefix of the last name is always one letter long; whatever login is generated using two or more letter of the last name, can be shortened further by removing extra letter to get an alphabetically earlier login.

Second, the prefix of the first name should not contain any letter greater than or equal to the first letter of the last name, other than the first letter.

Thus, a better solution is: iterate over letter of the first name, starting with the second one.

Full text and comments »

  • Vote: I like it
  • +125
  • Vote: I do not like it

By Nickolas, 7 years ago, translation, In English

Codeforces Round #455 for Div 2 competitors will be held on December 27 at 19:35 MSK. As usual, Div 1 competitors can join out of competition.

The round will be rated.

This round is based on tasks for summer contest for interns algO(1). If you have seen the problems from that contest before, please don't participate in the round. The problems were prepared by Maxim Kalinin (slycelote), Alexander Milanin (Milanin), Ibragim Ismailov (ibra) and me (Nickolas).

The competitors will be given six problems and two hours to solve them. The scoring distribution will be 500-1000-1500-1750-2000-2500.

We hope you'll like the problems. Good luck!

UPD: thanks to HellKitsune, vintage_Vlad_Makeev, 300iq, Arpa and Livace for testing the problems!

UPD: The contest is over. Editorial can be found here.

Congratulations to winners!

Div. 2:

  1. MegaOwIer
  2. skuecrk
  3. Vergara
  4. Luqman
  5. UoA_Kaori

Div. 1:

  1. Benq
  2. dotorya
  3. uwi
  4. I_love_Tanya_Romanova
  5. ksun48

Full text and comments »

  • Vote: I like it
  • +334
  • Vote: I do not like it

By Nickolas, 7 years ago, In English

Today the last fun Marathon of 2017 GarlandOfLights started. It will run for one week. I am the writer; enjoy :-)

Full text and comments »

  • Vote: I like it
  • +27
  • Vote: I do not like it

By Nickolas, 7 years ago, translation, In English

Marathon Match 95 CirclesMix started on October 4th and will run for one week. You can find it in the list of active contests. I am the writer :-)

Full text and comments »

  • Vote: I like it
  • +22
  • Vote: I do not like it

By Nickolas, 7 years ago, In English

Several Marathon matches were added to Topcoder event calendar:

  • Marathon Match 94, starting on August 16th — 1 week long.
  • lightning round leading to Warsaw regional event, runs August 29th — September 1st, open for everybody and awards TCO points.
  • Marathon Match 95, starting on October 4th — 1 week long.

Full text and comments »

  • Vote: I like it
  • +15
  • Vote: I do not like it

By Nickolas, 7 years ago, translation, In English

The third round of TCO17 Marathon Competition PoisonedWine started yesterday. It will run for two weeks, and top 30 competitors will get points which then will be converted to t-shirts and trips to the finals (here are the rules). This time the problem was written by timmac, I'm just the tester.

Full text and comments »

  • Vote: I like it
  • +33
  • Vote: I do not like it

By Nickolas, 7 years ago, translation, In English

On Friday Topcoder announcement date and location for TCO17 finals — October 20-24, Buffalo, NY.

And today we launched a themed Marathon match WaterfallFishing — rated but without any TCO points. It will run for one week (till May 29), and will have this week's Data Science Weekly Challenge associated with it.

Full text and comments »

  • Vote: I like it
  • +6
  • Vote: I do not like it

By Nickolas, 7 years ago, translation, In English

The second round of TCO17 Marathon Competition AbstractWars started today. It will run for two weeks, and top 30 competitors will get points which then will be converted to t-shirts and trips to the finals (here are the rules). Besides, this round will have two Data Science Weekly Challenges associated with it (which I still have to come up with). I am the writer, enjoy! :-)

Full text and comments »

  • Vote: I like it
  • +34
  • Vote: I do not like it

By Nickolas, 7 years ago, translation, In English

On Saturday, May 7th Topcoder Open returns to Saint-Petersburg, Russia! Event program includes:

  • an onsite round of Algorithm Competition: an SRM-style competition with top-10 participants advancing to the online Wild Card Round on September 16, from which two winners go to TCO finals in undisclosed yet location (rules).
  • T-shirts for all attendees :-)

If you want to participate, register.

Upd. List of registrants

Full text and comments »

  • Vote: I like it
  • +66
  • Vote: I do not like it

By Nickolas, 7 years ago, translation, In English

Incredibly, 34 people managed to solve all problems! 1032 participants solved at least one problem, and it wasn't always A :-)

784A - Numbers Joke

Traditionally the first problem of April Fools Day contest asks to recognize a sequence of integers by problem title and (this time) a single data point. OEIS search for just the given number isn't going to give a result — or rather is going to give too many to be useful. However, if you look for the problem title, the first result for "numbers joke" query will give you https://oeis.org/A006753 "Smith (or joke) numbers", which has 27 as its 3rd element.

784B - Kids' Riddle

This problem is a variation on a kid's riddle in which you have to count closed loops in digits of the number — one in 4, 6, 9 and 0 and two in 8.

Full text and comments »

  • Vote: I like it
  • +87
  • Vote: I do not like it

By Nickolas, 7 years ago, translation, In English

The contest is over; I hope you've enjoyed it :-) Editorial is here.


The fifth April Fools Day Contest will take place on Friday March 31st. This is a joke competition in which solving the problem is often easier than figuring out what the actual task is. Thanks to kit1980 and Codeforces team for their help in preparing problems!

In this round you'll be given 7 weird problems and 2 hours to solve them. The contest will use ACM ICPC rules (no hacks, the standings are decided by the number of solved problems and penalty time earned on them), and it will be unrated. You can submit solutions in any language allowed by Codeforces. To get an idea of what the contest will look like, you can check out the contests of the past years: 2012, 2013, 2014, 2016.

Be warned, to enjoy competing in this round you'll need a sense of humor compatible with mine! Good luck, and have fun!

Full text and comments »

Announcement of April Fools Contest 2017
  • Vote: I like it
  • +374
  • Vote: I do not like it

By Nickolas, 7 years ago, translation, In English

Marathon Match 93 CrossStitch started on March 1st and will run for 2 weeks. I am the writer.

Full text and comments »

  • Vote: I like it
  • +32
  • Vote: I do not like it

By Nickolas, 8 years ago, translation, In English

Marathon Match 92 Lighting started today and will last for 2 weeks. I am the writer :-)

Full text and comments »

  • Vote: I like it
  • +22
  • Vote: I do not like it

By Nickolas, 8 years ago, translation, In English

Marathon Match 91 WanderingTheCity will start on October 19/20 and run for two weeks. The match is very unusual — there is no real-life problem, and there are no prizes or trips to the finals :-) I am the writer.

Full text and comments »

  • Vote: I like it
  • +24
  • Vote: I do not like it

By Nickolas, 8 years ago, In English

A quick update on the status of e-maxx translation project.

First, I'm excited to announce that I've joined e-maxx in English team as an admin! From practical point of view this means that I can review and accept pull requests and help with the issues arising during the contribution process. Feel free to contact me if you have questions. And if I encounter anything outside of my expertise, I can always ping RodionGork directly :-)

Second, October is a particularly good month for contributions to e-maxx translation, as well as for open source contributions in general. Hacktoberfest is back this year, and they are giving away t-shirts to anyone who makes 4 pull requests to any GitHub-hosted projects between October 1st and 31st.

We don't have an explicit list of issues to work on, but there are two basic kinds of contribution we're looking for:

  1. Translations of articles (obviously :-)).
  2. Practice problems for already translated articles — these are the problems at online judges on which the described algorithm can be practiced. See circle-circle intersection article for an example.

Here is a recent post by RodionGork about technical improvements in contributions process.

So if you have at any point considered contributing to e-maxx translation, now is the time to do it :-)

Full text and comments »

  • Vote: I like it
  • +233
  • Vote: I do not like it

By Nickolas, 8 years ago, translation, In English

On Saturday, September 3rd TopCoder Open comes to Saint-Petersburg. Russia! Event highlights include:

  • an onsite round of Algorithm Competition: an SRM-style competition with top-10 participants advancing to the online Wild Card Round, from which two winners go to TCO finals in Washington DC (rules).
  • T-shirts for all attendees :-)
  • if during the next week (till July 22nd) by August 19th the event gathers 100 participants, TopCoder will add a lightning Marathon match with the same rules as for NYC regional event — the Marathon itself takes place before the onsite and is open for everybody to attend, and at the onsite closing ceremony the winners are celebrated. At the moment there are 26 60 94 registrants.

If you want to participate, register, and the sooner the better :-)

Upd. List of registrants

Full text and comments »

  • Vote: I like it
  • +68
  • Vote: I do not like it

By Nickolas, 8 years ago, In English

Here RodionGork started a project to translate http://e-maxx.ru/ into English. Looking at the project now, it looks barely alive — the last commit is almost 6 months old. So I'm curious whether it is still maintained and whether new contributions are welcome.

The reason of my sudden interest is the approaching Hacktoberfest which encourages people to contribute to open source by giving away T-shirts for contributions. This looks like just the thing we need to revitalize the translation :-)

Full text and comments »

  • Vote: I like it
  • +118
  • Vote: I do not like it