Junior Training Sheet - template - V6.0
 Share
The version of the browser you are using is no longer supported. Please upgrade to a supported browser.Dismiss

 
View only
 
 
ABCDEFGH
1
Problem Solving SheetThis google sheet is created by Eng Mostafa Saad Ibrahim. Overall ~800 problems for newcomers to problem solving.
2
mostafa.saad.fci@gmail.comAsk.fmSite / More Contacts
3
Video explaining this sheet (Arabic), though a bit outdated
4
Currenet Version V6.0
5
6
What is this Sheet?- Complete and consistent roadmap for new comers: What to solve & algorithms to learn in order
- In the bottom row, there are different sheet pages such as Faq, CF-A, CF-B...etc
- Covering all topics needed up to codeforces Div2-D
- Problems of scales 1 - 5.5 / 10 + Few harder ones
- Problems increase in difficulty per topic with intermediate easy/medium problems + ad-hoc problems
- Speed problems to maintain speed goals
- A lot of recorded videos for problems solutions, espically for the entry levels (Arabic)
- Several students followed its order and managed to solve by themselves 95% of it (up to his current sheet page)
7
8
Advantages of this Sheet?- To be a strong contestant, one has to take care of a number of quality and quantitiy factors
==> This roadmap does its best to satisfy that
- Typical issues in our Arabian region: Guys with 700-1000 solved problems and still weak!
- Why?
A) No specific roadmap or keep switching between them
B) Training while knowing problem category / level
C) Focus on specific online judge
- Again, this sheet solves these issues
- Allows you to write down your statiscs to learn from them (e.g. you consume much time in debugging)
- Continuous refining based on feedback
9
10
Your Sheet COPYThis 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

- Don't download the sheet, Use it online
- Can't edit it? Because it is read-only. Read below notes.
- Just make a copy to your google driver
- Then work over it online. Following are the details

- Login to ur google Gmail
- Go to my sheet
- In the sheet click on 'file' menu
- select Make copy
- it will create copy for u
- RENAME it to Junior Sheet <Your name>
- Now the copied sheet is opened for you (or go inside ur Google drive and you will find it)

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
11
For Whom?A junior is anyone who does't master solving codeforces Div2-D.
12
Prerequisites?Basic Programming skills such in seriesC++ Programming + STL + Debugging SkillsC++ is highly recommended
13
If foud my sheet hard, Finish Assiut University provides an easier starting roadmap. Finish it firstNovice RoadMapOnline Judge
14
Know about our community and what is programming competitions =>Watch these videos for more details
15
Code with any language but preferred C++ or Java. For Java:Solver to be ChannelCode El Masry Channel
16
17
Training Style?You can train alone, but highly advised to find partner(s) to work with to encourage each other.
18
19
Skills GoalsMoving from Junior Level to Semi-Senior Level: A one who do pretty well in CF-Div2 A, B, C, D and similar levels (e.g. TC-Div2-1000)
20
Knowledge GoalsUnderstand and build fair knowledge in some algorithms in Number Theory, Dynamic Programming, Greedy, Graph Theory and Search
21
22
SheetsSheet pages are mainly for Codeforces Div2 A, B, C, D + Problems on knolwdge topics (Mainly from UVA, SPOJ)
23
Each sheet has some sets, each set is ~10-15 problems....The top sets are mandatory....The below sets (after line mark) are optional
24
If you did well in the mandatory sets, move to next sheet...otherwise you still need training on similar level...then solve the optional problems
25
Please watch the videos in order, solve UVA/SPOJ problems in order. Don't skip them.
26
In some columns, some time recordings. This helps you to know how much time you take per a problem...use that to recognize your problems
27
In the level column give an estimate to the problem level from 1-2 (easy), 3-4 (medium), 5-6(hard), 7-8 (had to read editorials), 9-10 (can't solve)
28
In the comments column..write comments for hard problems.
29
Put problem StatusAC (for Accepted)CS (can't solve)Other values: WA (wrong answer), TLE (time limit exceeded), RTE, MLE
30
If you solved a problem before, put ACX instead of AC. Don't resolve
31
Don't let a problem consumes more than 2-3 hours. If can't solve it, see editorials/solutions. If still can't solve it, just leave it for now.
32
Don't compare yourself with others. People vary in their progress
33
34
Problem Level ColumnUse the following guide to assign a proper problem level

Div2-A => 1 - 2
Div2-B => 1.5 - 3
Div2-C => 3 - 5.5
Div2-D => 5 - 6.5
Div2-E => 6 - 7.5
D1-D => 7 - 8.5
D1-E => 8 - 9.5

In other words, most of the time, one shouldn't assign Div2-A problem level such as 5. But it can be: 1, 1.5, 2. Very few might be 2.5
35
36
NotationsCF136-D2-ACF (codeforces), D2 (Division 2), (136, A) is the problem URL. Note this is not Round 136 ... it is Round 97
37
SRM150-D2-1000SRM 150 (Topcoder), D2 (Division 2), 1000 (3rd problem)
38
39
Problems ColorsCF483-D2-AWhite for a problem from codeforces
40
UVA 10242Basic (if possible) Knowledge problem on the just watched videos
41
SPOJ CDOWNA knowledge problem on topic you watched before, will be harder than basic problems
42
CF518-D2-BProblem of easier level than current sheet page level to enhance multiple training levels in same time instead of 1 level training
43
44
Moving fasterDo I have to solve every problem? For Div2 (A, B, C1) => No. If you can move faster, do it. For Non CF problems (E.g. UVA), please solve all
45
46
Others SolutionsIf you solved a problem, please see some other accepted solutions in codeforces. You don't need to watch my linked videos unless can't solve
47
48
External ResourcesAwesome Competitive ProgrammingMany awesome links - very helpful for English guys
49
Ahmed Elsaghir TrainnigAhmed is senior from GUC
50
A2oj LaddersDon't like my sheet? Go with Ahmed Aly Ladders
51
Prgramming Ahmed M saydArabic Programming Playlist
52
Programming Mohamed desoukyArabic Programming Playlist
53
More ResourcesEach video is part of a playlist
54
55
HistoryV1: initial release
56
V2: Vidoes updates. Sheet P2A: Little problems replaced + reordering. P2B, P2C, P2D merged in P2B. P3A and P3B: new knowledge sheets
57
V3: Added problem names. P3A, P3B split over 3 sheets, reordered to be more incremental rather than random
58
V4: (https://docs.google.com/spreadsheets/d/12YI86X40xGtid9t1dUHkK6urrqh6nTaPEvOKBkAbAgU/edit?usp=sharing)
Solving many knowledge concerns:
1- Discarded rare topics (and their problems): ~20 videos.
2- Adding Easy problems after each video. You don't have to search by yourself anymore
3- Distributing many of the knowledge problems inside the the main sheets instead of delaying them to the last sheets.
Other concerns:
4- More smooth transitions from a sheet to another
5- Utilizing the new many problems added by CF since initial sheet creation
59
V5
60
- Added Video Solutions to some existing problems
- Added Easier DP problems after its Intro videos
- Added new topics: Tree Diameter, Isomorphism, DP (bitmasks, games, probability), Max Flow, SCC, Segment Tree, 2 pointers, Trie, KMP, Geometry Polygons
- Added problems for old categories to balance the available problem levels per category.
- Added 3 sheets for Div2-D (contains the old Misc sheet problems)

Note: If you were using version 4.X, then the major change for you is replacing "Misc" sheet with the 3 Div2-D sheets. If wanna migrate:
- Then Remove Misc sheet
- Click on the arrow for Div2-D sheets, and make copy for your sheet
61
V6:
- Added 3 columns to the sheet: debug time, category and by yourself columns
- Each sheet is enhanced with problems from the lower sheet (shifted from it). The purpose is to mix levels per sheet, hence allow multiple training levels in same time (hard vs speed concern). See the new added color
- Added probability/expectations English videos/problems
- Added Topological sort problems
- Solution editorials linked to many non-CF problems / more videos in DIv2-A/Div2-B
- Add many problems where my trainees marked as interesting problems. Removed some problems that I think not that interesting or its ideas covered by other problems (subjective). I am working on sheets with a simple, but hard to do idea: Most of the problems seems for the trainer novel in idea with less repeated ideas, hence learning a lot while solving much less.
===
If you are working in some sheet, find the convenient point to switch. E.g. if you are in middle of sheet, finish it and move to new sheet page from next one. Say you are in middle C1. Finish it first. Then remove C2, D1, D2, D3. In the new version, click a sheet page and select Copy To, then copy to your sheet. In other words, migration should be 5-min process. If need more, you are doing it wrongly.
62
63
Videos VolunteersWe are recording Arabic video solutions for sheet problems. I hope that makes the learning experience for newcomers much faster and less dependent on other people/coaches. I am in urgent need for volunteers. You will record in the levels you can (e.g. if you can do only Div2-A, then you will record in it)

In addition, we are writing editorials for non-editorual problems, especially in harder levels.

In case you want to help in that:
- Email me at mostafa.saad.fci@gmail.com
- Subject: Sheet Videos Volunteer - <Your Name>
- Link to your a2oj account (or CF account if no a2oj)
64
65
Thanks for all guys who sent sheet feedback: Mariam Alshereef, Magdy Hassan, Ahmed Yasser, Ahmed Elsayed Awad, Mohamed Nasser, Mostafa Ali Mansour, Aya elymany, Ayyad shenouda, Others.
66
Special Thanks for Coach Alhussain Aly for his continuous help
67
Special Thanks for All volunteers in videos recording / Editorials writing
Loading...
 
 
 
Info
FAQ
CF-A
CF-B
CF-C1
CF-C2
CF-D1
CF-D2
CF-D3
External
 
 
Main menu