RobinFromTheHood's blog

By RobinFromTheHood, history, 6 weeks ago, In English

I was fortunate enough to have the opportunity to co-organize a div3 round Codeforces Round 974 (Div. 3) last week, and whilst my memory is fresh, I'd like to share some thoughts which might be of interest to future setters and users.

The project started as a mere aspiration 6 months ago, when I contributed to Codeforces Round 946 (Div. 3). It gave me some confidence to think about setting a round, and Robin Hood seemed like a fun theme to weave some legends around. Over the next months, I collected a few ideas and gathered enough courage to approach the div3 coordinator Vladosiya, who was surprisingly 'chill' about my obvious lack of experience and low rating. I enlisted ChairmanFMao and Filikec, and the round became a summer pastime for us.

So, don't be put off by your rating or experience. If you come across nice ideas, discuss them, collect them, you might be the next contributor. Setting problems was quite straightforward with the polygon system. Like everything else, there is a learning curve, but most things are intuitive. The reward is that you can go from having an idea to a working problem in literally ten minutes.

Statement writing can be tricky. It's obvious that, with 30k people reading it, your statement will be read in every possible way, so you have to make everything as clear as possible. We tried hard, but it's nearly impossible to achieve. For example, a few people in contest queried whether the average in 2014C - Robin Hood in Town should be rounded to an integer. This was not the case and was not implied, but still we sent out a notification. In hindsight, we could have added that in the original statement. At times, it was hard to make sure the problems and the Robin Hood stories are framed naturally and not in a contrived or frivolous way. Our writing skills were tested, but we are happy to have tried.

Problem difficulties are hard to judge. For example, I originally thought 2014G - Milky Days and its 'frugal' variation involve some 'gentle' implementation, and could occupy the postions of C, D or E. In fact, I still don't understand why it ended up being the hardest problem of the set. I mean, stack is surely not as advanced (or as difficult) as xor hashing? As a setter, you have days and weeks to think about a problem, so it can appear easier than it really is. I mean, I probably wouldn't solve G either in a contest, like most people. Testers helped us out, and we adjusted the questions as explained in the editorial.

Problem balance was very much on our mind. We rejected some problems and add others for that reason. I love Dijkstra and DP, but I still need to improve on those topics. I often mess up the implementation in contests myself, but thinking about these problems have definitely improved my own understanding of these algorithms. We varied problems to cover different tpoics, but I dare not set a proper number theory problem, because I have an allergy to Bézout's theorem, but I am working on it. Maybe in the future.

We checked all problems on ChatGPT, and were confident that it could not solve the later problems. In fact, it even struggles with 2014B - Robin Hood and the Major Oak. However, ChatGPT did bring up relevant information, and it could definintely help a contestant. New AI will likely do better, so it's inevitable this discussion would go on. As a setter, I find the incessant demand for AI-proof questions quite lame and ignorant. AI will march on, we will have to deal with it the best we can. For now, it's banned for CP, I support that and we should probably leave it at that.

It was thrilling to watch the contest unfold in real time. I was eagerly watching the leaderboard and trying to answer some of the incoming questions for clarification. It was more exciting than say, cricket world cup final, and I love watching cricket! I saw Neal was leading most of the way, and BurnedChicken overtook him on G! In contrast, I tried to stay away from the comment sections of the announcement and editorial of the round, as I didn't want to respond to one and not another, and I didn't have energy to respond to all. So apologies to people expecting direct answers from me on the blog.

Final thought: Given the chance, I would definitely do it again, and would probably do a better job next time, but it's really a labour of love. I would definitely encourage any new setters to give it a go!

Full text and comments »

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

By RobinFromTheHood, history, 7 weeks ago, In English

Hello Codeforces!

Greetings from Nottingham, England! We are delighted to invite you to Legend of Robin Hood, a round inspired by our local folklore.

Codeforces Round 974 (Div. 3) will start on Sep/21/2024 17:45 (Moscow time).

You will be offered 6-8 problems with expected difficulties to compose an interesting competition for participants with ratings up to 1600. However, all of you who wish to take part and have a rating of 1600 or higher, can register for the round unofficially.

The round will be hosted by rules of educational rounds (extended ICPC). Thus, solutions will be judged on preliminary tests during the round, and after the round, it will be a 12-hour phase of open hacks. After open hacks all accepted solutions will be rejudged on successful hacks.

You will be given 6-8 problems and 2 hours and 15 minutes to solve them.

Note that the penalty for the wrong submission in this round is 10 minutes.

Remember that only the trusted participants of the third division will be included in the official standings table. As it is written by link, this is a compulsory measure for combating unsporting behavior. To qualify as a trusted participant of the third division, you must:

  • take part in at least five rated rounds (and solve at least one problem in each of them)
  • do not have a point of 1900 or higher in the rating.

Regardless of whether you are a trusted participant of the third division or not, if your rating is less than 1600, then the round will be rated for you.

Problems have been prepared by ChairmanFMao, Filikec and RobinFromTheHood.

We would like to thank:

  1. Vladosiya for brilliant coordination, and for improving all problems.

  2. 18o3, cry, ikrpprppp, pavlekn for orange testing.

  3. Axial-Tilted, raztun, vgoofficial for purple testing.

  4. Alenochka, FBI, macaquedev, Non-origination, SashaT9, umezo for blue testing.

  5. gbula, Pa_sha, 1165MOHITSINGHAL, _Hosam for Div. 3 testing :)

  6. MikeMirzayanov for Polygon and Codeforces platforms.

  7. You for participating in the round!

Good luck!

UPDATE: Editorial is out!

Image by Zmarlen with our thanks!

Full text and comments »

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

By RobinFromTheHood, history, 7 weeks ago, In English

Thank you all for participating in the round! We hope you had fun, as we did thinking of the problems. We would like to again thank our coordinator Vladosiya who made many suggestions for improving all problems here, and rejecting others.

2014A - Robin Helps

Author: RobinFromTheHood

solution
code python
code cpp

2014B - Robin Hood and the Major Oak

Author: ChairmanFMao; Developer: Filikec, RobinFromTheHood

solution
code python
code cpp

2014C - Robin Hood in Town

Author: RobinFromTheHood; Developer: Filikec, RobinFromTheHood

solution
code python
code cpp

2014D - Robert Hood and Mrs Hood

Author: RobinFromTheHood; Developer: ChairmanFMao; RobinFromTheHood

solution
code python
code cpp

2014E - Rendez-vous de Marian et Robin

Author: RobinFromTheHood; Developer: Filikec, RobinFromTheHood

solution
code python
code cpp

2014F - Sheriff's Defense

Author: Filikec; Developer: Filikec

solution
code python
code cpp

2014G - Milky Days

Author: RobinFromTheHood; Developer: Filikec, RobinFromTheHood

solution
code python
code cpp

2014H - Robin Hood Archery

Author: Filikec; Developer: Filikec

solution
code python
code cpp

Full text and comments »