mostafa.saad.fci's blog

By mostafa.saad.fci, 4 months ago, In English

Updating from time to time to reach more guys.


Since 2019 and I receive very positive feedback about the quality of my problem selections in my international supervision. I intended to make my problem lists public one day to help trainees to train in a more efficient and effective way.

This program started in 2016 and has been changed and improved a lot based on the received feedback from my trainees. I ended up with 2 big lists of problems: one for guys training toward IOI and another for ICPC/OnlineContest styles. Specifically 4 critical features:

  • Problem difficulty level [1-10] per problem is a manual weighted average of the assigned levels from my trainees’ sheets. A common complaint about 'online tools/ways for ranking problems by difficulty' is that they are not accurate. The issue is more severe for OI problems.

  • Problem importance level: ~ 5 levels (important, very interesting, interesting, good, normal/boring/repeated). Trainees solve a lot of problems that many of them are repeated or boring ideas. To maximize the training outcomes, one should train on unique/interesting ideas much more. Something that most of us can’t figure out easily.

  • Editorials. Many interesting problems may not have editorials (or have hard to understand editorials). I used to ask trainees to write some summary of how they solved a problem. Circulating these editorials between my trainees made it easy for them to get problems solved.

  • Submissions info: In Trainees Submissions page, ~25k submissions of my trainees. Per problem info (status, submissions count, times for reading/thinking/coding/debugging, category, subjective level, and a comment. You may use it to know some details about how others performed with the solved problem.


  • The problems lists link.
  • A Google Doc that outlines the evolution of this initiative since 2016. A lot of useful insights, especially for coaches.

Read more »

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

By mostafa.saad.fci, history, 9 months ago, In English


I could find POI codes/editorials till 2016 here

Any official/unofficial links for after 2016?

Read more »

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

By mostafa.saad.fci, 10 months ago, In English

I recently recorded a video for my Arabic CP community about Psychological Concerns in Competitive Programming. The video is in Arabic, but thanks for ~3 volunteers, the video now has English subtitles. Also here are the slides of this video. The video has tips for both individuals and the communities.

You will feel a mix of English styles. I hope overall is understandable. Providing sub-titles is a time-consuming job. Special thanks for the know volunteers _Noor and tj-black.

Compete and have fun but take care of your mental health :)

Read more »

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

By mostafa.saad.fci, history, 11 months ago, In English

We talk a lot about training and problem solving, but much less about Psychological Concerns in Competitive Programming that we face. Meanwhile, these Psychological Concerns slow the progress of many trainees.

I will record soon a video (in my Arabic Competitive Programming Channel). I would like to share with you the slides of this video. It might not be so clear (as they are just slides), but still could be useful.

Feel free to comment with whatever suggestions/corrections. I will record the video in Arabic as usual. If some volunteers provided sub-titles for it, I will share the video link.

Have fun but take care of your mental health :)

Read more »

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

By mostafa.saad.fci, 15 months ago, In English

For TC SRM Editorials:

  • Starting from SRM 710, they are reachable from here

  • For SRMS <= 433, reachable from here

  • I used to use this link to get ones > 433, but seems the link stopped working very recently.

Any tips? Am I missing something? Tagging for some TC guys is appreciated

Read more »

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

By mostafa.saad.fci, history, 20 months ago, In English

I used to encourage newcomers in our community to train using this sheet to avoid random training. By the end of the sheet, one will be very good up to Div2-D. It has been refined several times based on the received feedback.

Sheet link

Please, check out the sheet before reading. The sheet is

  • Complete and consistent roadmap for newcomers: What to solve & algorithms to learn in order

  • In the bottom row, there are different sheet pages such as Faq, Topics, CF-C2

  • CF-C1, C2 are (Codeforces Div2 C problems (or similar level from other OJs), but from easy to hard). Same for CF-D1, D2, D3

  • Covering most of the topics needed up to Codeforces Div2-D

  • Problems increase in difficulty per topic with intermediate easy/medium problems + ad-hoc problems

  • Speed problems to maintain speed goals

One can train in one of the following ways:

A) Blind-Order training style

  • Problems are distributed in sheets CF-A, CF-B, CF-C1, ....CF-D3

  • It targets learning the knowledge/skills in a consistent and balanced way

  • Every sheet page is on average harder than the previous sheet page

  • This is my recommended way, though most camps/training-approaches don't use this style

B) Topics-Based training style

  • See the sheet page (Topics1). It has the same sheet problems (CF-A to CF-D3) ordered by category and level, around 950 problems. Also checkout Topics2 page

  • Ideas Quality column: P5 (important), P4(very interesting), P3(interesting), P2(good), P1(ok), Empty (normal)

  • You can train using Blind-Order, and use Topics page as a guide to skip some problems

  • Advantage: Mastering the algorithm till solving some hard problems in a short time

  • Disadvantage: Discovering the algorithm behind the problem is an important skill. Given that you know the topic, you lose a good space to improve this skill

  • Disadvantage: Being in the mode of specific algorithm lets you solve many of it easier. However, when solving in real contests, your mind is not so active on the specific topic

Read more »

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

By mostafa.saad.fci, 22 months ago, In English
  • This repository is mainly used as part of my online free coaching. However, it will be beneficial for others.
  • The repository contains mini-editorials/notes written by my trainees for some problems in several OJs (UVA, SPOJ, LiveArchive, Timus, etc).
  • The same also for the IOI and OI problems (CEOI, Baltic, Balkan, APIO, etc).
  • I searched and organized many of web official editorials/solutions for IOI/OI to make it easier for my trainees.
  • The content will grow up more by time.

For more details, read and explore the repository

Have fun :)

Read more »

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

By mostafa.saad.fci, 2 years ago, In English

Last update: August 2020

Registration is opened as long as it is still opened in the form (I receive emails whenever someone applies).

Update: the private problem lists of this program are now made public. I encourage trainees to be more independent...


Hello guys,

I am a Coach in the ACM ACPC (Arabian) Region. For more about my competitive background.

This is an announcement for Online Free Coaching (Actually, a supervision not coaching).

Supervision Includes

  • Understanding the trainee level in the different algorithmic categories and his\her weak points.
  • Selecting customized problems to solve according to the trainee level/status
  • Following up on what is missing and what is needed to be done
  • Giving attention to several qualitative and quantitative factors.
  • A training sheet that helps you record your progress and discover your training issues. Also, a mind logging technique to understand behavior.
  • Communication: Emails and Chatting (to communicate with me) — Discord (to communicate with other trainees)

Supervision doesn’t include

  • Helping with problems, coding/debugging together
  • Teaching Algorithms: I will tell you what to learn and when

The audience

  • Trainees CF Rating: 2400 — 2900
  • Interest in ICPC — IOI — Online Contests — Improving specific skills or category
  • See some of my trainees opinions about it (replies on xuanquang1999)

Time Dedication

  • Background: I tried several styles in the last years for 'time dedication' and was more disappointed when allowed flexible training availability.
  • I will expect at least 5-10 hours per week in study terms and 20-30 hours per week in summer vacations. Exams are the exception (or good justification). I will cancel the training once this is violated. Don't apply unless planning serious training.

Have interest?

  • Apply.
  • If you are accepted in the supervision, you will receive an email within a week.

Other notes

  • I have designed a sheet for newcomers to make them good up to Codeforces Div2-D level.
  • I have a GitHub repo for IOI/OI official resources / Mini-Editorials for other OJ problems.

Read more »

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