Thoughts on Coaching Grays?

Revision en11, by TheScrasse, 2022-04-06 21:24:25

Hello everyone,

I'm asking for some help about how to train my schoolmates for Regional OI. Most of them have a fairly good MO background, so they are supposed to get good even if they don't practice at home (i.e., I think the $$$2$$$ hours a week at school should be enough to qualify to National OI). However, the results so far are quite disappointing: I feel I'm doing something really wrong.

Format of Regional OI

The statements are here (requires registration). Each year, there are usually

  • $$$2$$$ easy problems (let's say A, B);
  • $$$1$$$ standard DP with a twist (C);
  • $$$1$$$ standard graph problem with a twist (D).

A < B < C < D (in order of difficulty and points). They are similar to Div. 3 C, D, E, F. Solving A and C is enough to go to National OI.

Schedule of this year

The training started in October 2021.

  • October - November: introduction to C++ and STL (in the CPH, they correspond to chapters $$$1$$$, $$$2$$$, $$$3$$$, $$$4$$$, part of $$$5$$$, part of $$$6$$$)
  • December - January: dynamic programming (chapter $$$7$$$)
  • end of January: ad-hoc, number theory (chapter $$$21$$$)
  • February - April: graphs (chapters $$$11$$$, $$$12$$$, part of $$$13$$$, part of $$$14$$$, part of $$$15$$$)
  • May: Regional OI.


  • Initially, there were at least $$$20$$$ participants. Many of them dropped out of the training very soon. I actually expected this: the background of the participants was quite heterogeneous, and maybe it would have been better to hold two parallel training sessions ("basic" and "advanced"), but there was no other "trainer". Maybe this issue can be solved next year. Currently, there are $$$7$$$ participants.
  • $$$2$$$ of them got a silver medal at National OI last year. The tasks I propose to the rest of the group are too easy for them, so they try harder tasks (but I can't pay much attention to them).
  • About (most of) the others, I think they still struggle too much with implementation. More specifically, they don't have a clear understanding of what they are implementing. Examples:

    Q. "Now you have to pick the unprocessed node with the smallest distance [in Dijkstra's algorithm], how to do that?"
    A. "Adjacency lists?"

    Q. "So, what's the time complexity?"
    no one answers
    I explain why the complexity is $$$O(n + m \cdot \log n)$$$
    A. "This time complexity is so weird"

    Result: at the end of the meeting ($$$2$$$ hours), there is someone who still hasn't finished implementing Dijkstra.
    Of course, I can't blame the participants. In fact, the same "lack of understanding" happens to me when I try to solve physics problems.

Why does it happen?

I suspect the main reason is that most participants solved too few problems, but I haven't find a way to avoid this issue.

  1. I don't want to force them to do homework or train on their own. They have something better to do.
  2. I don't think solving a lot of *800 rated problems is a good strategy.
  3. When they can't solve a problem, I feel they just wait for the explanation and they don't strive to learn something new from the solution.
  4. It's difficult to find easy DP and graphs problems (i.e., I feel there is almost always a huge difficulty gap between "count connected components" and "realize that, after this modification, the problem reduces to counting connected components").


Seeking for help

Regional OI is in $$$1$$$ month. I'm quite sure that all the participants to the training have the potential to qualify to National OI, but I feel I wasted that potential. Moreover, I don't want to repeat the same mistakes next year.

If you have suggestions to fix the "coaching" method, please write them in the comments. Thanks!

Tags training, school, help


  Rev. Lang. By When Δ Comment
en11 English TheScrasse 2022-04-06 21:24:25 10 Tiny change: 'raindead "implement a priorit' -> 'raindead "use a priorit'
en10 English TheScrasse 2022-04-06 20:46:27 0 (published)
en9 English TheScrasse 2022-04-06 20:45:48 26
en8 English TheScrasse 2022-04-06 20:45:06 18
en7 English TheScrasse 2022-04-06 20:44:26 142
en6 English TheScrasse 2022-04-06 20:14:48 9 Tiny change: 't to find problems easy DP a' -> 't to find easy DP a'
en5 English TheScrasse 2022-04-06 20:13:29 2743
en4 English TheScrasse 2022-04-06 20:09:02 2275
en3 English TheScrasse 2022-04-06 19:10:12 405
en2 English TheScrasse 2022-04-06 19:00:08 47
en1 English TheScrasse 2022-04-06 18:58:29 1298 Initial revision (saved to drafts)