tourist's blog

By tourist, 9 months ago, In English

Tune in to my Twitch to watch me solve today's Codeforces Round 672 (Div. 2) virtually.

UPD: Video on YouTube.

Read more »

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

By tourist, 9 months ago, In English

Hey there!

During my last stream (link to YouTube), besides the expected SNSS Round 5, I did Codeforces Round 669 (Div. 2) virtually trying to explain most of my thoughts in the process. I'd say it went pretty well!

Tomorrow I'll hold another stream solving the most recent Codeforces Div. 2 rounds: Round 670 and Educational 95. I might also do today's AtCoder Beginner Contest 178.

I'm planning to go live right after Educational 95 finishes — that is, around 19:45 MSK.

A question is, given that I will do both Round 670 and Educational 95, which one should I do first? Vote here :)

As usual, the stream will be live on my Twitch, make sure to follow and get instant notifications. Stream recording will be posted to my YouTube afterwards.

See you!

Read more »

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

By tourist, 10 months ago, In English

It's this time of the year again!

Tune in at twitch.tv/the__tourist at around 21:45 MSK, 21 Aug 2020 to watch me solving SnarkNews Summer Series 2020 Round 1 live! First I will do the round competitively without much interaction, and I'll be up for discussing the problems on stream afterwards.

SnarkNews Winter/Summer Series (SNWS/SNSS) is organized by snarknews yearly and consists of 5 rounds. Each round is a virtual 6-problem 80-minute contest open for 10 days. The series is open to all, but problem statements are in Russian only. Unlike last series, I'll be reading problem statements automatically translated to English on stream.

To make the stream more fun and for easier understanding of what will be going on, you're welcome to do the round yourself beforehand! If you don't understand Russian, you can also compete using automatic translators. Alternatively, you may just read the problems without solving them. In any case, don't discuss the problems in Codeforces comments before the round window ends.

Tentative schedule of future streams:

I might be streaming at other times too, so be sure to follow me on Twitch and get instant notifications.

See you on stream!

UPD: Round 1 stream is available on my channel: link. Round 2 stream is starting as planned, in 8 hours — be sure to join! Here is the contest link if you'd like to do the contest or read the problems beforehand.

UPD2: Round 2 stream: link. Unfortunately, Round 3 has not started yet — therefore, the next streams have to be postponed. Follow this blog and my Twitch for updates.

UPD3: New dates of Rounds 3-5 (and hence my streams) have been announced!

UPD4: Just a friendly reminder: Round 3 ends in less than 24 hours, and thus my next stream is coming tomorrow! Also note that Rounds 4 and 5 are about to end as well, there are just two days between consecutive rounds.

UPD5: Round 3 stream: link. Round 4 stream is coming in less than 4 hours from now!

UPD6: Round 4 stream: link. The last stream of the series, Round 5, is coming today in less than 3 hours!

UPD7: Round 5 stream: link (with virtual Codeforces Round 669 (Div. 2) as a practice before SNSS). This was the last stream of the series, thank you for tuning in! However, this was not the last stream of the season — check this blog post for more.

Read more »

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

By tourist, 16 months ago, In English

XX Open Cup Grand Prix of Gomel takes place on Sunday, February 16, 2020, at 11:00 AM Petrozavodsk time.

The links to the contest:

You need an Open Cup login to participate.

I'm the writer of all the problems. Let's discuss them here after the contest!

UPD: Thanks for your participation! Editorial is available.

Read more »

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

By tourist, 17 months ago, In English

(Previous episodes: Episode 001, Episode 002, Episode 003, Episode 004)

Hey there, it's time for the final stream of the series!

Tune in at twitch.tv/the__tourist at around 22:45 MSK, 06 Feb 2020 to watch me solving SnarkNews Winter Series 2020 Round 5 live! I'm going to do the round competitively without any interaction, and I'll try to explain the problems in English on stream afterwards.

As usual, I invite you to do the round yourself before I do! If you don't understand Russian, you may compete using automatic translators, or you may just read the problems beforehand without solving them. In any case, don't discuss the problems in Codeforces comments before the stream ends.

See you on stream!

UPD: Video at YouTube. This series is over now! Thanks for watching, and I hope you enjoyed the streams.

Read more »

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

By tourist, 17 months ago, In English

(Previous episodes: Episode 001, Episode 002, Episode 003)

Hey there!

Tune in at twitch.tv/the__tourist at around 21:45 MSK, 28 Jan 2020 to watch me solving SnarkNews Winter Series 2020 Round 4 live! I'm going to do the round competitively without any interaction, and I'll try to explain the problems in English on stream afterwards.

As usual, I invite you to do the round yourself before I do! If you don't understand Russian, you may compete using automatic translators, or you may just read the problems beforehand without solving them. In any case, don't discuss the problems in Codeforces comments before the stream ends.

See you on stream!

UPD: Video is available at YouTube.

Read more »

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

By tourist, 17 months ago, In English

(Previous episodes: Episode 001, Episode 002)

Hey there!

Tune in at twitch.tv/the__tourist at around 21:45 MSK, 22 Jan 2020 to watch me solving SnarkNews Winter Series 2020 Round 3 live! I'm going to do the round competitively without any interaction, and I'll try to explain the problems in English on stream afterwards.

As usual, I invite you to do the round yourself before I do! If you don't understand Russian, you may compete using automatic translators, or you may just read the problems beforehand without solving them. In any case, don't discuss the problems in Codeforces comments before the stream ends.

See you on stream!

UPD: Thanks for watching! Video is available at YouTube. My performance was remarkably bad, but hopefully that didn't make the stream less fun :)

Read more »

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

By tourist, 17 months ago, In English

Episode 001

Hey there!

Tune in at twitch.tv/the__tourist at around 21:45 MSK, 17 Jan 2020 to watch me solving SnarkNews Winter Series 2020 Round 2 live! I'm going to do the round competitively without any interaction, and I'll try to explain the problems in English on stream afterwards.

Just like the last time, I invite you to do the round yourself before I do! If you don't understand Russian, you may compete using automatic translators, or you may just read the problems beforehand without solving them. In any case, don't discuss the problems in Codeforces comments before the stream ends.

See you on stream!

UPD: Video at YouTube. This time with more implementation-oriented problems and worse performance of mine, but clearer sound and more thorough explanations :) Do let me know what you think.

The next stream is planned at the end of SNWS 2020 Round 3: 21:45 MSK, 22 Jan 2020.

Read more »

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

By tourist, 17 months ago, In English

Hey there!

Tune in at twitch.tv/the__tourist at around 21:45 MSK, 12 Jan 2020 to watch me solving SnarkNews Winter Series 2020 Round 1 live! First I will do the round competitively without any interaction, and I'll be up for discussing the problems on stream afterwards.

SnarkNews Winter/Summer Series (SNWS/SNSS) is organized by snarknews yearly and consists of 5 rounds. Each round is a virtual 6-problem 80-minute contest open for 10 days. The series is open to all, but problem statements are in Russian only. Nevertheless, I'm going to discuss the problems in English.

To make the stream more fun and for easier understanding of what will be going on, you're welcome to do the round yourself before I do! If you don't understand Russian, you may compete using automatic translators. Alternatively, you may just read the problems beforehand without solving them. In any case, don't discuss the problems in Codeforces comments before the stream ends.

See you on stream!

UPD: The stream is over. If everything goes well, the next stream will happen at the end of SNWS 2020 R2: 21:45 MSK, 17 Jan 2020. Do let me know whether you liked it and any other thoughts/suggestions in comments!

UPD2: The video of the stream is now available at YouTube.

Read more »

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

By tourist, history, 18 months ago, In English

We will hold AtCoder Grand Contest 041. This is the last contest of 2019 that counts for AtCoder Race Ranking.

The point values will be 300 — 700 — 900 — 1200 — 1600 (800 + 800) — 2000.

We are looking forward to your participation!

Read more »

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

By tourist, history, 20 months ago, In English

Enjoy!

A. Balanced Rating Changes
B. Balanced Tunnel
C1. Balanced Removals (Easier)
C2. Balanced Removals (Harder)
D. Balanced Playlist
E. Balanced Binary Search Trees
F. Balanced Domino Placements
G. Balanced Distribution
H. Balanced Reversals

Read more »

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

By tourist, history, 20 months ago, translation, In English

Hey!

On Oct/16/2019 17:35 (Moscow time) we will host Codeforces Global Round 5.

It is the fifth round of a new series of Codeforces Global Rounds supported by XTX Markets. The rounds are open for everybody, the rating will be updated for everybody.

The round will last for 2 hours 30 minutes, 8 problems are waiting for you, and one of them will be proposed in two versions.

Scoring distribution: 500 — 750 — (750 + 750) — 2000 — 2500 — 3000 — 3750 — 4000

The prizes for this round:

  • 30 best participants get a t-shirt.
  • 20 t-shirts are randomly distributed among those with ranks between 31 and 500, inclusive.

The prizes for the 6-round series in 2019:

  • In each round top-100 participants get points according to the table.
  • The final result for each participant is equal to the sum of points he gets in the four rounds he placed the highest.
  • The best 20 participants over the whole series get sweatshirts and place certificates.

The problems of this round were developed by me, and here is the list of people who can't take part in the round as they know the problems beforehand:

KAN, Endagorion, arsijo, Rox, lperovskaya, Aleks5d, Learner99, MikeMirzayanov.

Coincidentally, this is also the list of people I'm thankful to for making this round what it is.

The round will be perfectly balanced. As all things should be.

Welcome!

UPD: The round is over! Editorial is here. Congratulations to the winners:

  1. Radewoosh
  2. Petr
  3. 300iq
  4. ecnerwala
  5. RomaWhite

Read more »

Announcement of Codeforces Global Round 5
 
 
 
 
  • Vote: I like it
  • +3664
  • Vote: I do not like it

By tourist, 2 years ago, In English

XIX Open Cup Grand Prix of Gomel takes place on Sunday, February 10, 2019, at 11:00 AM Petrozavodsk time.

The links to the contest:

You need an Open Cup login to participate.

The Division 1 contest also serves as the open qualifying contest for MosCode Festival 2019.

I'm the writer of all the problems. Let's discuss them here after the contest!

Read more »

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

By tourist, history, 3 years ago, In English

The rules for advancement to the onsite finals of TCO 2019 Algorithm have changed from those for TCO 2018:

http://tco19.topcoder.com/home/algorithm/algorithm-rules

This page claims there are "three (3) ways to advance to the Onsite Finals"!

The first way to advance is to take part in SRMs. There are four three-month Online Stages, during which every positive score in an SRM counts towards a global ranking. The best competitor in each Online Stage advances to the onsite finals directly, with the next 10 competitors advancing to Online Round 4 (which is the final qualification round).

The other two ways stay the same. The best 10 competitors (used to be 14 though) advance from Online Round 4, and the best 2 competitors advance from Online Wild Card Round.

The changes seem to be big enough -- and already relevant, since SRM 736 on August 15 (in two days from now) already counts towards Online Stage 1. However, apart from TCO 2019 website I've only seen this information in Topcoder weekly newsletters, and I believe many people have missed it.

What do you think?

Read more »

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

By tourist, history, 3 years ago, In English

XVIII Open Cup Grand Prix of Gomel takes place on Sunday, February 18, 2018, at 11:00 AM Petrozavodsk time.

The link to the contest. You need an Open Cup login to participate.

I'm the writer of all the problems. Let's discuss them here after the contest!

Read more »

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

By tourist, history, 3 years ago, In English

Hello!

Topcoder SRM 728 will be held tomorrow (January 25, 2018).

See what time it starts in your area.

I'm the writer. Everyone is welcome to participate!

Read more »

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

By tourist, history, 3 years ago, In English

What is better than setting one AtCoder Grand Contest? Setting two AtCoder Grand Contests, of course!

AtCoder Grand Contest 020 will be held on Sunday (time). The writer is tourist.

Contest Link

Contest Announcement

This is the first contest of 2018 counted towards AtCoder Race Ranking. If you get into top 30 in this contest, you will get GP30 scores.

The point values will be 300 — 500 — 700 — 1100 (500) — 1400 — 2100. Note that the contest duration is unusual (130 minutes).

Let's discuss problems after the contest.

Read more »

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

By tourist, history, 3 years ago, translation, In English

Here is the tutorial of Hello 2018. Enjoy!

Modular Exponentiation
Christmas Spruce
Party Lemonade
Too Easy Problems
Logical Expression
Strongly Connected Tournament
Power Substring
Don't Exceed

Read more »

Tutorial of Hello 2018
 
 
 
 
  • Vote: I like it
  • +463
  • Vote: I do not like it

By tourist, history, 3 years ago, translation, In English

Hello 2018!

If you're still thinking what to do on the eighth day of year 2018, pay attention! The first round for both divisions of the new year starts on January 8 at 17:35 Moscow time (what about other timezones?).

Four important components of Hello 2018 will be the same as in Good Bye 2017:

  • Div1 + Div2 combined
  • 8 problems
  • 2 hours 30 minutes
  • Rated

But there will also be a substantial difference:

  • Different problems

The problems of this round have been proposed and prepared by YakutovDmitriy, Nebuchadnezzar and myself.

Thanks to everyone without whom this round wouldn't be possible as well: AlexFetisov, Golovanov399, KAN, MikeMirzayanov, PavelKunyavskiy, qwerty787788, VArtem, winger.

Good luck!

Scoring distribution: 500 — 750 — 1000 — 1250 — 1750 — 2250 — 3000 — 3500.

Problem tutorial can be found here.

Congratulations to the winners!

  1. Um_nik
  2. desert97
  3. yosupo
  4. dotorya
  5. zeliboba
  6. FizzyDavid
  7. Endagorion
  8. .o.
  9. SpyCheese
  10. Kostroma

Read more »

Announcement of Hello 2018
 
 
 
 
  • Vote: I like it
  • +2848
  • Vote: I do not like it

By tourist, history, 4 years ago, In English

AtCoder Grand Contest 019 will be held on Saturday (time). The writer is tourist.

Contest Link

Contest Announcement

The point values will be 300 — 500 — 900 — 1000 — 1700 (1200) — 2000 (1500). Note that the contest duration is unusual (150 minutes).

Let's discuss problems after the contest.

Read more »

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

By tourist, 4 years ago, In English

There's been much controversy lately about the late submission strategy not penalized by scoring systems of AtCoder and CS Academy. Most of the relevant discussion happened earlier at http://codeforces.com/blog/entry/53431 and http://codeforces.com/blog/entry/53449.

I have a lot of thoughts on the topic, so I've decided to share them in a separate blog post.

I really like the strategic part of programming competitions. Of course, problem solving is more important. But every contest consists of multiple problems, so there has to be a way of comparing participants which performed better at different problems. There's a huge variety of scoring rules, and I find it truly amusing.

The "submit after solving all problems" strategy looks widely attributed to me now, mostly due to Petr's remarks regarding my participation in AtCoder contests. In my opinion, it's wrong for multiple reasons.

A closer five-word description of my strategy is "implement after solving several problems". It's still quite inaccurate, though.

Here is my typical behavior during the last few contests:

  1. Read all the problems. Usually starting with the last one, but it's not important.
  2. While reading each problem, try to understand what it asks for, think about it for a minute.
  3. Start thinking about problems in random order, frequently jumping from one problem to another.
  4. Strive to make progress or look at a problem from a different perspective every time you get back to it. For easy problems, this usually means solving them from the first try, as there's little progress to be made.
  5. Look at the scoreboard to get a grasp of the amount of time people typically spend on each problem. This helps understand whether one should look for a simple solution.
  6. At some moment, I feel stuck in every problem I haven't solved yet (possibly an empty set). This usually happens during the first half of the contest. Implement solutions to solved problems in any comfortable order. Submit them. Here, there are two main options: submit a solution after implementing it, or do a batch submit after implementing all of them. I've tried both, and I think it doesn't matter too much. At least the latter option doesn't make me upset with WA in the process of implementing another solution, and also saves me from the urge of refreshing the submissions page for each problem separately :)
  7. Try to solve the rest of the problems, again jumping between problems if there's more than one, but spending more time on one problem in a row. Once a problem is solved, implement its solution and submit.

I feel like this strategy has only one major disadvantage. Time spent in the beginning on problems one doesn't eventually solve is counted towards the penalty, which doesn't happen when using the standard "solve -- implement -- submit -- move on to the next problem" working cycle. For example, this could've cost me several places during AtCoder Grand Contest 018 -- I spent more than 10 minutes thinking on E and F before deciding to implement A-D, so if I hadn't solved problem F, I would've taken place 10 instead of place 7 with the normal strategy. It would've been even worse if both E and F had turned out to be unsolvable (which happens sometimes too) -- place 5 instead of place 1 for me. So, there's a prerequisite which one might call a disadvantage too: it's important to estimate problem difficulty well and feel when it's time to move from thinking to implementing.

On the other hand, I see multiple advantages. The first and foremost advantage for me: I feel very comfortable with this kind of behavior. I know that for many people it's hard and non-profitable to switch between problems too often, as it takes time to change the context. But I'm used, if not say addicted, to switching between problems often, and it seems in this case I come up with new ideas faster and better. Maybe that's due to subconscious thinking happening in background, or just a fresh look at the problem helps, it's hard to say. Implementing several solutions in a row also turned out to be comfortable and effective enough for me, as unlikely as it may seem.

Another slight advantage is, as Petr mentioned, not giving information to other participants. Intentionally withholding submissions to prevent giving information does help sometimes. It's a rare thing, though. In most cases, if you want to optimize your own result, you want to submit when it feels like you should submit, not when the scoreboard tells that you may submit.

And a small advantage I also consider important is seeing the whole picture of the problemset this way. Like, when you come to an exam, you can either start working on the problems one by one until you run out of time, or consider all the stuff you need to do and start with the most important things. The latter option feels better to me, though it might be very subjective.

Finally, the most controversial point is the possibility to bail out of the contest if your performance is poor. I wouldn't call it an advantage of this strategy. I believe considering the option of leaving the contest without submitting is disadvantageous, as you spend time thinking whether you should submit, while other participants work on the problems at the same time. The only profit you might get is the possibility to save your rating, which is a way of comparing contestants over many rounds but doesn't influence anything except one's self-esteem. And leaving the contest doesn't boost your skill anyway, so this is a meaningless thing to do in the long run.

To the admins of AtCoder and CS Academy: I think there's no need to change the rules. In my opinion, the "loophole" of leaving the contest without submitting doesn't create any big troubles. Clicking on the "Read Problems" button making the round rated for oneself requires a higher level of commitment from contestants which sometimes they aren't ready to provide. There are people for whom the rating is more important than participating in the contest; let them be. We are not reaching any goals by requiring much commitment, we're just decreasing participation.

Have fun!

Read more »

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

By tourist, history, 4 years ago, translation, In English

Here is the tutorial of VK Cup 2017 Round 3 and Codeforces Round #412. Enjoy!

Is it rated?
T-Shirt Hunt
Success Rate
Dynamic Problem Scoring
Prairie Partition
Perishable Roads
Blog Post Rating
Test Data Generation

Read more »

Tutorial of VK Cup 2017 - Round 3
 
 
 
 
  • Vote: I like it
  • +570
  • Vote: I do not like it

By tourist, 4 years ago, translation, In English

Hi everyone!

The last elimination round of VK Cup 2017, Round 3, will take place on May 7 at 18:35 MSK (check your timezone here), along with separate Codeforces Round #412 for both divisions. All three rounds will be three hours long, and all three rounds will be rated.

The contest "VK Cup 2017 — Round 3" is for teams qualified from Round 2 or Wildcard Round 2. The top 20 teams will advance to the final which will be held in July 2017 in Saint Petersburg!

Huge thanks to KAN, qwerty787788, PavelKunyavskiy, AlexFetisov, MikeMirzayanov, and VK company for making this round possible.

Codeforces will be the main character of most problems. Don't forget that it's useful to read the statements of all the problems.

Good luck!

As we're in year 2017, the scoring will obviously be static. The exact scoring distribution will be announced before the round.

UPD 1. The scoring distribution is:

Div. 1 and VK Cup Round 3: 500 — 1000 — 1750 — 2500 — 2750 — 3500

Div. 2: 500 — 1000 — 1500 — 2000 — 2750 — 3500

UPD 2. Due to yesterday's registration troubles the start of the contest is delayed by 10 minutes.

UPD 3. Congratulations to the winners!

VK Cup Round 3:

  1. zemen, Zlobober
  2. V--o_o--V, LHiC
  3. RomaWhite, witua
  4. YakutovDmitriy, Nebuchadnezzar
  5. Golovanov399, -imc-

Div. 1:

  1. Petr
  2. yosupo
  3. rng_58
  4. uwi
  5. Nezzar

Div. 2:

  1. ltaravilse
  2. btk15049
  3. RCG
  4. SUSTechDFS
  5. hieutrungle

UPD 4. Tutorial is now available.

Read more »

Announcement of VK Cup 2017 - Round 3
 
 
 
 
  • Vote: I like it
  • +2247
  • Vote: I do not like it