Skip to content

Shaker-Hussien/Problem-Solving-Training

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Problem Solving Training

Problem Solving Training for computer science students.









Table of Contents


This level simply consists of 20 sheets, 6 sheets on URI Online Judge, 2 sheets on HackerRank Online Judge, 6 sheets on Codeforces Online Judge, 4 sheets on HackerEarth Online Judge, and the last 2 sheets on AtCoder Online Judge.

The prerequisites for level 1 of this training are the basic knowledge for any programming language like (Variable Types - Basic Operators - Conditions - Loops - Functions - Lists/Arrays - Strings).




The URI OJ sheets: phase-1-1, phase-1-2, phase-1-3, phase-1-4, phase-1-5, phase-1-6, each sheet of them divided into (Beginner - Ad Hoc - Strings - Data Structures - Mathematics - Geometry). These sheets were ordered based on the problem difficulty and grouped by the problem topic. Finally, each sheet contains ~175 problems.


The HackerRank OJ sheets: cpp, python, each sheet of them divided into (Introduction - Conditionals and Loops - Arrays and Strings - Functions Standard Libraries - Classes and Inheritance). These sheets were ordered based on the problem difficulty and grouped by the problem topic. Finally, each sheet contains ~80 problems.


The Codeforces OJ sheets: phase-1-1, phase-1-2, phase-1-3, phase-1-4, each sheet of them contains A Div2 problems and divided into (Basic Operators - Conditions - Loops - Lists/Arrays - Strings). These sheets were ordered based on the problem difficulty and grouped by the problem topic. Finally, each sheet contains ~125 problems.

For the last 2 sheets: div3-div4-contests that focus on div3 + div4 contests (easy contests) and contains ~85 contests, and educational-contests, that focus on educational-contests (medium contests) and contains ~125 contests.


The HackerEarth OJ sheets: phase-1-1, phase-1-2, phase-1-3, phase-1-4, each sheet of them divided into (Input/Output - Bit Manipulation - Recursion - Operators). These sheets were ordered based on the problem difficulty and grouped by the problem topic. Finally, each sheet contains ~100 problems.


The AtCoder OJ sheets: phase-1-1, phase-1-2, These sheets contain beginner contests (easy contests and each sheet contains ~180 problems.


This level simply consists of 22 sheets, 6 sheets on URI Online Judge, 2 sheets on HackerRank Online Judge, 4 sheets on Codeforces Online Judge, 6 sheets on LeetCode Online Judge, and the last 4 sheets on HackerEarth Online Judge.

The prerequisites for level 2 of this training are the basic knowledge for Data Structures and Algorithms like (Linear Data Structures - Non-Linear Data Structures - Searching Algorithms - Sorting Algorithms - Divide and Conquer).




The URI OJ sheets: phase-2-1, phase-2-2, phase-2-3, phase-2-4, phase-2-5, phase-2-6, each sheet of them divided into (Ad Hoc - Strings - Data Structures - Mathematics Graph Paradigms Geometry). These sheets were ordered based on the problem difficulty and grouped by the problem topic. Finally, each sheet contains ~150 problems.


The HackerRank OJ sheets: data-structures, algorithms-basics, each sheet of them contains linear and non linear data structures problems, and basic algorithms problems. These sheets were ordered based on the problem difficulty and grouped by the problem topic. Finally, each sheet contains ~120 problems.


The Codeforces OJ sheets: phase-2-1, phase-2-2, phase-2-3, phase-2-4, each sheet of them contains B-Div2 problems and divided into (Data Structure - Mathematics - String - Greedy - Brute Force). These sheets were ordered based on the problem difficulty and grouped by the problem topic. Finally, each sheet contains ~120 problems.

For the last 2 sheets: gym-contests-1, gym-contests-2 that focus on gym-contests that contains ~120 contests.


The LeetCode OJ sheets: linear-data-structures-1, linear-data-structures-2, non-linear-data-structures-1, non-linear-data-structures-2, basic-algorithms-1, basic-algorithms-2, each sheet of them divided into (Array - LinkedList - Stack - Queue - Binary Tree - Heap Tree - HashTable) plus (Binary Search - Sorting - Divide and Conquer - Greedy - Bit Manipulation). These sheets were ordered based on the problem difficulty and grouped by the problem topic. Finally, each sheet contains ~190 problems.


The HackerEarth OJ sheets: linear-data-structures, non-linear-data-structures, algorithms-searching, algorithms-sorting, each sheet of them contains linear and non-linear data structures problems, plus searching and sorting algorithms. These sheets were ordered based on the problem difficulty and grouped by the problem topic. Finally, each sheet contains ~100 problems.


This level simply consists of 24 sheets, 4 sheets on HackerRank Online Judge, 4 sheets on Codeforces Online Judge, 4 sheets on AtCoder Online Judge, 4 sheets on LeetCode Online Judge, and the last 8 sheets on HackerEarth Online Judge.

The prerequisites for level 3 of this training are the advanced knowledge for Data Structures and Algorithms Analysis like (Disjoint Sets - Trie - Segment Tree - Binary Indexed Tree - Divide and Conquer - Graph Algorithms - Greedy Algorithms - Dynamic Programming - Mathematical Algorithms).




The HackerRank OJ sheets: mathematics-1, mathematics-2, graph-string, dynamic-programming, each sheet of them divided into (string, number theory, algebra, graph, greedy, mathematics, bit manipulation, and dynamic programming). These sheets were ordered based on the problem difficulty and grouped by the problem topic. Finally, each sheet contains ~130 problems.


The AtCoder OJ sheets: regular-contests-1, regular-contests-2, grand-contests-1, grand-contests-2, These sheets contain (Regular + Grand) contests (medium contests) and each sheet contains ~60 problems.


The Codeforces OJ sheets: phase-3-1, phase-3-2, phase-3-3, phase-3-4, each sheet of them contains C-Div2/A-Div1 problems and divided into (Divide and Conquer - Graph - Data Structure - Math and Number Theory - String - Greedy and Brute Force - Dynamic Programming). These sheets were ordered based on the problem difficulty and grouped by the problem topic. Finally, each sheet contains ~120 problems.

For the last 4 sheets: gym-contests-1, gym-contests-2, gym-contests-3, gym-contests-4 that focus on gym-contests that contains ~125 contests.


The LeetCode OJ sheets: tree-graph-traversal, graph-advanced-data-structures, mathematics-strings, dynamic-programming, These sheets contain string, graph, bfs, dfs, mathematics, backtracking, and dynamic programming problems, in addition to advanced data structures. These sheets were ordered based on the problem difficulty and grouped by the problem topic. Finally, each sheet contains ~190 problems.


The HackerEarth OJ sheets: mathematics-strings-1, mathematics-strings-2, graph-1, graph-2, dynamic-programming-1, dynamic-programming-2, advanced-data-structures-1, advanced-data-structures-2, each sheet of them divided into (string, graph, greedy, mathematics, number theory, dynamic programming, advanced data structures). These sheets were ordered based on the problem difficulty and grouped by the problem topic. Finally, each sheet contains ~120 problems.


coming soon ...

Prerequisite Knowledge

coming soon ...

coming soon ...


coming soon ...


coming soon ...


coming soon ...


coming soon ...


Notes

  • If the student has a target to compete in the programming competitions like ICPC or Google CodeJam or Google KickStart or Meta Hackercup or TopCoder Open TCO, so it's recommended to start with Codeforces sheets, TopCoder sheets, UVa sheets, and AtCoder sheets, but if (s)he has a target to practice on a specific topic or preparing for an interview, so it's recommended to start with HackerEarth sheets, HackerRank sheets, URI sheets, and LeetCode sheets.
  • On each one of these sheets has an excel sheet to record your effort and enhance your progress, The time estimate for level problems is between 30 min to 45 min for each problem, including reading time, thinking time, coding time, debugging time, and learning time, and you can say that the sheet is done if you solved at least 30% of the sheet problems, finally you can say that the level is done if you solved at least 6 sheets.

About

Problem solving training for computer science students.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published