LearnToCP
Sign in
Navigation
HomeRoadmapProblemsAbout Us
Theory
Contest Knowledge
Selecting an IDEInteractive TasksOutput-Only Tasks
Basics
Your First ProgramData types and IOC++ syntaxModuloFunctionsVectorsMatricesTime Complexity
Sorting
SortingCounting sortRadix Sort
Optimization Techniques
Two PointersSum of numbers 1 to nPrefix sumBinary SearchGreedyBinary Search FunctionsBinary Search by AnswerDivide and Conquer
Binary Numbers
Binary NumbersNumbers in codeBitwise OperationsBitmasks
Math
Binary ExponentiationPrime NumbersPrime FactorizationGCD and LCMSieve of EratosthenesModified Sieve
Data Structures
StringsStackQueueMapsSetsPriority QueueCustom Criteria for FunctionsSegment TreesFenwick TreesSparse TablesUnion Find
Combinatorics
Addition PrincipleMultiplication PrincipleCombinatoric ObjectsInclusion Exclusion Principle
Geometry
Geometry BasicsVectorsCross and Dot ProductLinesPolygonsAnglesPoint in PolygonDistances and Intersection PointsConvex HullCircles
Recursion
PointersRecursionGenerating Combinatoric Objects
Dynamic Programming
About DPDP problemsTree DPBitmask DPDigit DP
Graph Theory
GraphsDFS and BFSShortest PathsTreesTopological SortingDijkstra's AlgorithmMinimum Spanning TreesShortest Path Algorithms
Advanced Graph Theory
BiconnectivityStrongly Connected ComponentsBipartite GraphGraph FlowAugmenting PathsFlow - Minimum Cut DualityHeavy-Light DecompositionCentroid Decomposition
Advanced Data Structures
2D and 3D Segment TreesLazy PropagationImplicit Segment TreesPersistent Segment TreesLowest Common AncestorTrieBalanced Binary Search TreesMo's Algorithm

Next Steps

If you are reading this that means you completed Test 3, Congratulations!

You now have all the knowledge necessary to compete in a Regional Competition! Or achieve Candidate Master on codeforces!

I would highly advise you to go to another website and practice as many problems as you can before moving on to the next chapter.

The future chapters are about to get a lot more technical and the problems are about to get a lot more difficult. This is because a lot of the future techniques assume you have already solved hundreds(maybe even thousands) of problems before. So they mask what you are actually ment to do behind complex math and logic.

Do not be discouraged! If you made it this far you 100% have enough talent, endurance and potential to go further! (You did solve 75 hand picked problems, some of which, Ill admit were very difficult and impressive)

It just takes a bit of practice, practice that, unfortunately, I am still not able to provide on this platform (I am a solo 17yo dev, not a large organization)

I firmly believe that the BEST platform for practicing is codeforces, and I suggest you make an account there!

Once you feel comfortable in your problem solving skills, feel free to return here and continue learning (The most fun techniques, in my opinion, are ahead! )