okwedook's blog

By okwedook, 5 months ago, In English

I’ve been really excited to try my skills in some harder marathon type problems as of late
Some of the competitions, where you could find such problems are:

TopCoder has hosted over 150 MM’s over the past 18 years, which is simply incredible. Hats off!
Unfortunately, after some research I’ve found out, that all accounts from Russia and Belarus got banned
Now it’s not only impossible to participate in current competitions, but even view the archive
I’m not here to judge TopCoder decisions, but to ask for help

Is there any known open source archive of Marathon Matches with statements, examples, visualizers and other stuff?
Maybe someone from Codeforces community might help and publish it, if it doesn’t break any of TopCoder rules?

I’ll gladly help with automations needed to gather data, but I don’t have the full access to the TopCoder website
If you know any other source of such problems, please share in the comments

Maybe dimkadimon has something to say

Let’s hope, that peace breaks out and we all return back to normal :mending_heart:

Full text and comments »

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

By okwedook, 19 months ago, In English

The problems were named after songs of my favorite musical group, Hippie Sabotage. Give them a try!

1826A - Trust Nobody

Hint1
Hint2
Solution

С++ Implementation: 204718333

1826B - Lunatic Never Content

Hint1
Hint2
Solution

С++ Implementation: 204718497

1826C - Dreaming of Freedom

Hint1
Hint2
Hint3
Solution

С++ Implementation: 204718535

1826D - Running Miles

Hint1
Hint2
Solution

С++ Implementation: 204718553

1826E - Walk the Runway

Hint1
Hint2
Hint3
Solution

С++ Implementation: 204718603

1826F - Fading into Fog

Hint1
Hint2
Hint3
Solution

С++ Implementation: 204718641

Full text and comments »

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

By okwedook, 19 months ago, In English

Hi, Codeforces!

I am glad to invite you to take part in Codeforces Round #870 (Div. 2), which will take place on May/05/2023 17:35 (Moscow time). The round will be rated for the participants with rating lower than 2100. Participants from the first division are also welcomed to take part out of competition.

You will be given 2 hours to solve 6 problems. All the problems were authored and prepared by me. One of the problems is interactive, please read the guide of interactive problems before the contest.

I would also like to thank:

Scoring: $$$500-1000-1500-2000-2750-3250$$$.

Don't forget to read ALL the problems. I wish you good luck and high ratings!

I tried my best to create some good problems and clear short statements, so I hope you'll enjoy the round and find a problem you like :)

UPD: Editorial

UPD: Winners and First-to-solve

Div1 + Div2

Place Participant
1 A_G
2 Rubikun
3 kotatsugame
4 244mhq
5 risujiroh

Div2

Place Participant
1 Perfectt
2 Hovery
3 UmajiHidakata
4 ivatopuria
5 wrihapcod

First-to-solve

Task Participant
A arvindf232
B A_G
C ksun48
D kaiboy
E wsyear
F triple__a

Full text and comments »

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

By okwedook, history, 21 month(s) ago, In English

TLDR; Yes, it's possible, but with some comments

First of all let's look at the past. Were there people that gained rating of 2400+ after a Div. 2 round?
Turns out this already happened!

The 5 contestants that reached red after Div. 2 rounds are

But of course there is always a catch. Both demon1999 and klimmek55 were already masters when they joined the contests, so I wouldn't count that as reaching grandmaster after a Div. 2 round.

Nevertheless, what about the other three?
They had a rating lower than 2100 before the contest and 2400 or more after. Easy peasy right?

Well, unfortunately, no. As a long time member of codeforces I remember this change in codeforces rating. It states, that new users recieve an additional delta for the first 6 rated rounds they participate in. One could already guess that all the remaining participants reached red in the first 6 rounds. apei and WYZFL in 4 rounds, and afterall in 5 rounds to be exact. This basically means, that they weren't really Div. 2 participants after all, since their accumulated deltas actually make them masters.

One could ask whether it is possible even in theory. This question is hard to answer, since codeforces rating is semi-open and might have some hidden limitations. But I am optimistic in this case, and since we know one user could be worth a thousand cyans, current contests are just not large enough for people to shine. If anyone can prove/disprove this mathematically, please share your thoughts in the comments.


CSV of 10000 best new ratings after Div. 2 rounds

Full text and comments »

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

By okwedook, 21 month(s) ago, In English

I am facing some challenges writing editorials for a round. Some of them were discussed in this blog.

Now I am preparing my second Div. 2 contest (which is going to take place soon!) and I came to a point, where I want to start writing the editorial for the problemset.

My first contest was a total success in terms of editorial, it got heavily upvoted. Here are some key factors, which might have to do with it:

  • Problems. First and foremost, if the people were to hate the problems, it would definitely affect the rating of the editorial. Good problems are an essential part.
  • Timing. I published the editorial less than a minute after the contest, so more people would actually read it. Don't be like tourist in the recent rounds :D
  • Hints and spoilers in general. The editorial doesn't look messy, you can open only the tasks you need and hints are a great thing when trying to actually improve reading an editorial. Treat hints as if they're as important as the problem statements.
  • Implementations. My approach here was based on not copy-pasting the code to the blog, but actually making all the needed submissions after the contest and then add the links to the editorial. This way one could actually see, that the code is working, not look at some plain (or colored) text. This took a few hours, since you can't submit before the system testing is done. I had solutions in both C++ and python, which is nice for python CPers.
  • Responsiveness. There will be typos and bugs in the editorial, listen to the people, that are trying to point them out. Even the small inconsistencies might affect the understanding of a bunch of people. Especially the last problems, which are often overlooked, since very few actually read it.

There are a few adjustments that I might propose for codeforces team:

  • Let us add solutions for the problems beforehand, not after the system testing. By this, I mean automatically give access to the pre-written solutions after the round ends (I know you already make the submissions to test beforehand, just make them public).
  • Post the editorial automatically after the round ends.

I have questions to the more experienced problemsetters:

  • How do you synchronize editorials in Polygon and Codeforces blog? I like the idea of keeping everything in one place, which is Polygon for me. But with every small change I have to paste it to the blog by hand. Like, this is cringe.
  • How do you write editorial with spoilers in Polygon so that it doesn't say use quotes like ``text'' instead of "text" in tutorial. I am a perfectionist, I don't like this warning :(

Any other advice would be highly appreciated.

Full text and comments »

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

By okwedook, 4 years ago, In English

Hi, Codeforces!

I finally get to return something to this great community, so I am glad to invite you to take part in Codeforces Round #703 (Div. 2), which will take place on Feb/18/2021 17:35 (Moscow time). The round will be rated for the participants with rating lower than 2100. Participants from the first division are also welcomed to take part out of competition.

You will be given 2 hours 15 minutes to solve 6 problems. All the problems were created and prepared by me. One of the problems is interactive, please read the guide of interactive problems before the contest.

I would also like to thank:

Scoring: $$$500-1000-(750+750)-1750-2250-3000$$$.

Don't forget to read ALL the problems. I wish you good luck and high ratings!

I tried my best to create some good problems and clear statements, so I hope you'll enjoy the round:)

Story

UPD: Editorial

UPD: Winners and First to solve

Div1 + Div2

Place Participant
1 renascencepjw0510
2 dlalswp25
3 Bohun
4 kmjp
5 theodor.moroianu

Div2

Place Participant
1 renascencepjw0510
2 Quirrel
3 YuuKoito
4 _Nyusha_
5 JackF

First to solve

Task Participant
A king_of_tt
B IgorI
C1 dlalswp25
C2 dlalswp25
D Omer223
E lulzz
F JackF

Full text and comments »

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

By okwedook, 4 years ago, translation, In English

1486A - Shifting Stacks

Hint1
Hint2
Solution

Solution using C++: 107892022
Solution using Python: 107892053

1486B - Eastern Exhibition

Hint1
Hint2
Solution

Solution using C++: 107892065
Solution using Python: 107892085

1486C1 - Guessing the Greatest (easy version)

Hint1
Hint2
Solution

Solution using C++: 107892097
Solution using Python: 107892140

1486C2 - Guessing the Greatest (hard version)

Kudos to Aleks5d for proposing a solution to this subproblem.

Hint1
Hint2
Hint3
Solution

Solution using C++: 107892122
Solution using Python: 107892144

1486D - Max Median

Hint1
Hint2
Hint3
Solution

Solution using C++: 107892153
Solution using Python: 107892163

1486E - Paired Payment

Hint1
Hint2
Hint3
Solution

Solution using C++: 107892178

1486F - Pairs of Paths

Hint1
Hint2
Hint3
Solution

Solution using C++: 107892186

Full text and comments »

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

By okwedook, 5 years ago, In English

Hello, Codeforces!

I want to ask if somebody can help and explain why something like this can happen.

The story behind this

Basically I was implementing a segment tree using push down technique to imple adding a number on a segment in 739C - Alyona and towers. After writing it correctly I've got stuck on test 4. I've gone through a huge stress test (about 20000 tests) and did not spot the mistake.

After two hours more I've added #define int long long in the beginning of the program. It helped me to pass test 4, but it got TLE on test 47. As you can probably tell I couldn't have told why did it help. And since I write this entry I can't tell now. After a little investigation I found out that the only difference is in a small method void add(int d). Here are the codes: Wrong Answer 4 and Accepted. The only thing changed is void add(int d) is now void add(long long d). Inside of the function the only thing i do is

void add(int d) {
    p += d;
    left += d;
    right += d;
}

All variables p, left and right are long long so the only difference is in d. This difference means that long long += int does not work as (I) expected. I've always thought it converts int to long long and then sums up. Seems it is not the case.

I was wondering whether somebody can help me and give explanation. Also would like to read how do you manage such problems like overflow on contests.

Thanks in advance

UPD: Problem solved.

Full text and comments »

  • Vote: I like it
  • -8
  • Vote: I do not like it