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 https://goo.gl/unDETI
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
it would be nice to have a training roadmap for oldcomers like me
Thanks for the suggestion :) For now, you may consider: https://codeforces.com/blog/entry/59131
It would be awesome if you could add some English tutorials. Still, your sheet is great. Thank you. :)
Thanks for your hard work Mostafa!
I just wanted to ask something and please do not take it the wrong way. I am considering of following your training roadmap, but this is a big commitment, so I would like to make sure it's a good roadmap. For me, it seems weird that you have only taken part in 9 contests and your score is close to 1600, but still proclaim to have the roadmap that can make you able to solve Div2-D problems. For this I would like to ask, is there something more you have been working on (are you in other platforms with a better rating or something)?
I know you don't have to convince me that your roadmap is good or that it works. And I do appreciate all the effort and work you put on it.
still proclaim to have the roadmap that can make you able to solve Div2-D problems
I think that it may be because he has successfully trained some people to that level (using that roadmap).
I am an old guy. In our days UVA and Topcoder were the main training platforms for me. Before stopping CP, Codeforces was launched, that is why I don't have competitions history
There are a lot of good people who will have low rate. High rate in contests is function in several factors, such as proper handling for online contests pressure (e.g. a lot of people think how others will think about their rate changes), accuracy (getting problem AC after how many submissions), skills (which level you can solve/algorithms you know) and finally and more importantly speed. In Div2, there are lot of people who can solve e.g. Div2-E after the contest, but not fast enough to get in the contest. Similarly for Div1-D guys. The assumption low rate => low skills is wrong.
I guess I always had troubles in online contests, but I was a very good team player, such as ICPC.
You can some about my background from here.
i can not access the sheet for version 5/6/7? will u please give access to me? TIA
Use latest https://goo.gl/unDETIb Read sheet title
It says "Dynamic link not found"
Sorry extra letter https://goo.gl/unDETI
You should make your own copy as mentioned in the sheet
You have mentioned that semi senior training sheet being in progress.. Is it done already?
I released the whole problems lists I have. I think if someone finished my juniors sheet, he will be able to seelct some problems. Still in future I might take from my time and do it.
what should be the recommended way for beginning with competitive programming
Blind order or Topics based
both r ok I favor blind. You can mix them.
Hey mostafa.saad.fci, although I don't understand arabic, the problem sheets are amazing! I have solved most of the questions from B and am almost done with C1 over the past two months. My rating has gone up like magic! Thanks for the sheet!
Thanks a lot for this useful feedback :)
I am a newbie for almost 1.5 years. I don't know that should I practice according to this sheet or not.
I see your rating graph and surprised after looking at the increase in the last months to the present. I just wanna know how much did your ratings rose after practicing according to this sheet.
Please tell me that and also give advice that should I practice according to this sheet?
Apart from the sheet, I also practiced on InterviewBit/Leetcode, which may have helped in the boost to 1400. But spending time on the sheet exposes one to a lot of good questions.
as far i know, in the problem sheets there are around 400 problems in B and C1, but over the past two months you solved total 120+ problems with average 1400 difficulty in CF including contests. Anyway, congrats!!
I also practiced last 2 months thoroughly and solved good amount of problems with decent(average 1500) difficulty but still i could not make it to expert :(
hey is solving this sheet worth it? i am confused? can i trust spending time in sheet?please answer?
bro,Yes. Absolutely Yes. The Questions are pretty Good. They are mostly challenging.I have Done mostly sheets A, B ,C1, C2 (leaving the optional questions ). My rating increased upto 1730 using that only. and after that I stopped solving them (not because they are not worthy , but because I felt I need to take some break from that because the questions became more tough ).
In btw while Doing if you find things difficult then refer other sources , I mean don't just stick onto the codes that he gives only.
How long did it take for you to finish A, B, C1, and C2
practicing how many problems/hours per day ?
10-15 approx. but remember this has 80 questions or so of div2 A,B types
Sorry to ask but is it 10-15 problem or hours?
Problems per day
thank you! should i solve them like A,B,C,D?or blind order style?
solving sheet A ,then sheet B .... is only blind order style i think. anyways I solved like first sheet A then B the C1 ...
Can you pls guide me in how to approach this sheet
I think, instructions are given in the sheet.
Sir, you must be red/orange in some other platform. Your sheet is helping a lot.
Please add some English video tutorial.
bro? is solving this sheet worth it? how it helped you? can u tell me? please
Yes it is a really nice sheet.
see at the bottom of the sheet
mostafa.saad.fci I can solve almost all Division 2-D, and a few Division 2-E. What should I be follow now?
I am solving this sheet,is it worth solving.whenever i get stuck i read codeforces editorial because i don't know Arabic.Do i need to watch your videos,i mean is it compulsory, most important question is it worth solving..plz any info
compulsory only. Editorials should be enough
Well, my question is pretty naive.But,can please someone help me to access the problems of the sheet.
You need to make your own copy, as mentioned in the sheet
could u plz make a blank sheet of junior training sheet and provide plz ?
Hey hackerman44 Check the 18th row
"This is a personal Google sheet for you [Make a copy from file MENU] to have sets of problems to solve coupled with algorithms to learn
Login to ur google Gmail
NOTE: If u did so and still read-only format, then you are again opening my sheet (e.g. with old name), NOT your copy"
i did read the page. But you didn't get me! i asked for a blank sheet where i can put my own problems and monitor my improvements.
But there's a error. whenever i replace my own problems in the place of the remaining problems list it works! but if i outnumber the problems list (like if i put one line below the D3 sheet nothing works ) the summation + color + counting are not working!! what's the fix ?
Your questions 'how to change color, how to change range of formula' are questions about google sheets, not this specific sheet. I think it's better to learn about google sheets from google / other websites.
AFAIK when you create a new row at bottom, it copies the formatting of last existing row and if a formula range ended at last row, then that formula range is extended automatically too.
i downloaded the google sheet as an excel sheet(.xlsx) for windows, but when i create a new row the formulas + formats are not copied! What can i do for this !?
Bruh! it doesn't copy the format. I am attaching a picture of it => https://imgur.com/BseHPhJ
Of course this formula is not copied, as range of this formula is horizontal.
I don't use windows so I don't know. Try searching in google maybe?
Anyway, you don't really have to add new rows or change color if you don't know how to use excel sheet. Just copy existing sheet and remove the problems and comments.
*thanks for ur great effort for helping newbies like me.. only shortcoming was the video part in which i didn't got old of any word in arabic otherwise sheet was worderful some improving measures: - adding subtitle would work - ****posting new videos on related topics will be very helpful
I plan to record an English video soon
also i found some UVA problems challenging , when failed to do i looked into hte video provided...but found it to be in arabic (no clue what he was trying to say) so is there any other reference for solution for non CF problems(editorial type).
Just skip the hard UVA problems From C, UVA problems many of them will have editorial link
In near future, I will try to provide UVA editorials for A/B sheet problems
thank you for advice just one more question.... how much one can push his rating by completing the sheet.... also please post your video in english , you seem to be a very helping guy but most of us cant make much of that...
Practically speaking, you will be so good in offlline solving in Div2-D. Rating really depends on many factors as mentioned here https://codeforces.com/blog/entry/72140
How long will it take me to finish the whole sheet.
The sheet contains around ~950 problems. The FAQ says it will take ~700-900 hrs, so if you dedicate 20 hrs/week it will take around 8 months.
I've working on since a month ago, and have finished 89 problems from sheet A and 35 problems from sheet B, summing up 53 hrs for 124 problems. The first problems are easy, but they become harder as you advance.
Still a long road to go, but definitely I'll recommend it because is very well balanced.
keep going :)
Sir,How much time should i spend each question as a beginner like me and when should i see the editorial or others code if i stuck?
20-30 minutes thinking in sheet A/B. Feel free to go more from time to time.
It's good to have a non distracting way...
Thanks for doing this mostafa.saad.fci! I just started with CP and found your work really useful and inspiring. I don't know Arabic but the sheet problem selection, logging, and overall structure are great! Thanks!!!
Glad to help
What can you suggest for non-Arabic speakers? How can we use it?
It has problems, many English editorials, the topics to learn. You almost can find ur way without Arabic like many others
Is it recommended to start directly from C1?
Auto comment: topic has been updated by mostafa.saad.fci (previous revision, new revision, compare).
guyz i think we should make some kind of group where people can discuss these problems with each other ]
Are these problems still good for practice to increase ratings? Are they still compatible with the latest problems?
Auto comment: topic has been updated by mostafa.saad.fci (previous revision, new revision, compare).
Hello. Can i skip tasks not from codeforces.com?
Yes, but they have some valuable exercises. That is why I added them.
I made my copy of the sheet, but how will I know which problems I've already solved?
I solved many problems but I have to check each problem individually to see whether I have solved it or not.
Thank you for the sheet!
In the sheet, status column, mark your status (e.g. AC)
please do deeper browsing for the sheet.
There's no Topics2 tab in the sheet, kindly look into it please.
I removed as now I published my whole private list. Check out my blog posts
Please help me,find the problems in the sheet,i cant see any problem in sheet
You seems not good in sheets :)
In the bottom, you find tabs. Each tab has problems.
Will there be any problem if I pause my training for some months, eg (2-3 months), after completing C1 page of the sheet?
Most of my students regeret. Spend 2 hours weekly to maintain your level. Solve Div2-Bs and a C from time to time.
I, too, completed the C1 page halfway through before pausing CP for 1.5 years. Any tips to continue solving the sheet? Or, should I continue solving at all?
Sir in your sheet you wrote about speed training. I am not sure, how exactly you want me to do that.
One way, focus on solving 100 consecutive Div2-A with speed and accuracy in mind. If improved, move to B. Then keep A/B solving as part of your training E.g. 10 of them.
Note, speed training is more for guys who are in Div2-C and above.
AhmedMostafa480 The best way to enter the world of problem solving
Mostafa, Is this list getting updated with the latest probelms or they are constant for a long time? I am not an expert in this but I have observed the difficulty and variation of problems changing from time to time.
The philosophy and the selection of this sheet doesn't depend on the time factor. The problems are selected such that most of them have new ideas that build different skills. You need this selection in all cases
Ok, sir. And one more thing Can you please provide the video content in English or at least the topic explained in the video in the form of articles in English? The sheet is excellent, but I am having a language barrier to understand the concept in the video.
So how can I choose my level? I'm not a newcomer I have been doing CP for (12,14) month ; how could I start ? Is there any roadmap for people like me? mostafa.saad.fci
In each group of 10 problems, pick one and see your level. Do jumps to find a suitable start
ok, thank you very much ...
can you add a direct link to the sheet please?
I stuck a lot in greedy problems what should i do? and now solving from 1300 rating randomly
Hey i had a question, i started solving this sheet few days back.. is the sheet still relevant or you would suggest some changes???.. Please kindly reply that'll help a lot.
Relevant and strong choice