What makes a great competitive programming problem?

Правка en1, от wrusb, 2026-07-31 20:29:58

Lately I've been trying to get into problemsetting, and one question keeps coming to mind: what actually makes a problem "great"?

I searched around a bit, and the only blog I found discussing this topic in depth was antontrygubO_o's "On problemsetting": https://codeforces.me/blog/entry/70178

The only problem is that it was written about 7 years ago. Since then, competitive programming has changed quite a lot, so I was wondering what people think nowadays.

I'd love to hear opinions from both experienced problemsetters and contestants.

Some questions I have:

  • What makes a problem memorable or enjoyable to solve?
  • What are the biggest mistakes beginner setters usually make?
  • Are there any recent problems or contests that you think are great examples of good problemsetting?
  • When creating problems, what do you care about the most? Originality? Elegance? Educational value? A nice story? Something else?
  • How do you come up with new ideas without accidentally reinventing an existing problem?

Or just share your own thoughts about problemsetting in general. There probably isn't a single "correct" answer, so I'm interested in hearing different perspectives.

Hopefully this thread can become a nice collection of advice for people who want to write better problems.

Thanks!

История

 
 
 
 
Правки
 
 
  Rev. Язык Кто Когда Δ Комментарий
en1 Английский wrusb 2026-07-31 20:29:58 1368 Initial revision (published)