Problem Solving Training for computer science students.
This level simply consists of 18 sheets, 6 sheets on URI Online Judge, 2 sheets on HackerRank Online Judge, 2 sheets on AtCoder Online Judge, 4 sheets on Codeforces Online Judge, and the last 4 sheets on HackerEarth 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). Related Training: Programming Languages and Object Oriented Training
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 6 classes of problems (Beginner - Ad-Hoc - Strings - Data Structures - Mathematics - Geometry). These sheets were ordered based on the problem difficulty and grouped by the problem type. Finally, each sheet contains ~175 problems.
phase-1-1 | 175 problems | phase-1-2 | 175 problems | ||
---|---|---|---|---|---|
Beginner | 45 problems | solutions | Beginner | 45 problems | solutions |
Ad-Hoc I | 40 problems | solutions | Ad-Hoc I | 40 problems | solutions |
Ad-Hoc II | 35 problems | solutions | Ad-Hoc II | 35 problems | solutions |
Strings | 10 problems | solutions | Strings | 10 problems | solutions |
Data Structures | 15 problems | solutions | Data Structures | 15 problems | solutions |
Mathematics | 25 problems | solutions | Mathematics | 25 problems | solutions |
Geometry | 5 problems | solutions | Geometry | 5 problems | solutions |
phase-1-3 | 175 problems | phase-1-4 | 175 problems | ||
Beginner | 45 problems | solutions | Beginner | 45 problems | solutions |
Ad-Hoc I | 40 problems | solutions | Ad-Hoc I | 40 problems | solutions |
Ad-Hoc II | 35 problems | solutions | Ad-Hoc II | 35 problems | solutions |
Strings | 10 problems | solutions | Strings | 10 problems | solutions |
Data Structures | 15 problems | solutions | Data Structures | 15 problems | solutions |
Mathematics | 25 problems | solutions | Mathematics | 25 problems | solutions |
Geometry | 5 problems | solutions | Geometry | 5 problems | solutions |
phase-1-5 | 175 problems | phase-1-6 | 165 problems | ||
Beginner | 45 problems | solutions | Beginner | 35 problems | solutions |
Ad-Hoc I | 40 problems | solutions | Ad-Hoc I | 40 problems | solutions |
Ad-Hoc II | 35 problems | solutions | Ad-Hoc II | 35 problems | solutions |
Strings | 10 problems | solutions | Strings | 10 problems | solutions |
Data Structures | 15 problems | solutions | Data Structures | 15 problems | solutions |
Mathematics | 25 problems | solutions | Mathematics | 25 problems | solutions |
Geometry | 5 problems | solutions | Geometry | 5 problems | solutions |
The HackerRank OJ sheets: phase-1-cpp This sheet focus on c/c++ basic problems, It's divided into 7 classes of problems (Introduction - Conditionals and Loops - Arrays and Strings - Functions - Standard Template Libraries - Structs and Enums - Classes and Inheritance). It was ordered based on the problem difficulty and grouped by the problem type. Finally, this sheet contains ~70 problems. phase-1-python This sheet focus on python basic problems, It's divided into 6 classes of problems (Introduction - Basic Data Types - Collections - Functions - Standard Libraries - Classes). It was ordered based on the problem difficulty and grouped by the problem type. Finally, this sheet contains ~100 problems.
cpp | 70 problems | python | 100 problems | ||
---|---|---|---|---|---|
Introduction | 15 problems | solutions | Introduction | 5 problems | solutions |
Conditionals and Loops | 5 problems | solutions | Basic Data Types | 20 problems | solutions |
Arrays and Strings | 10 problems | solutions | Collections | 30 problems | solutions |
Functions | 5 problems | solutions | Functions | 10 problems | solutions |
Standard Template Libraries | 5 problems | solutions | Standard Libraries | 25 problems | solutions |
Structs and Classes | 30 problems | solutions | Classes | 10 problems | solutions |
The AtCoder OJ sheets: phase-1-1, phase-1-2, These sheets focus on beginner contests (easy contests) and each sheet contains ~90 problems.
phase-1-1 | 90 problems | phase-1-2 | 90 problems | ||
---|---|---|---|---|---|
2016-2017 Beginner Contests | 20 problems | solutions | 2016-2017 Beginner Contests | 20 problems | solutions |
2018-2019 Beginner Contests | 30 problems | solutions | 2018-2019 Beginner Contests | 30 problems | solutions |
2020-2021 Beginner Contests | 40 problems | solutions | 2020-2021 Beginner Contests | 40 problems | solutions |
The Codeforces OJ sheets: phase-1-1, phase-1-2, phase-1-3, phase-1-4 contain A-Div2 problems, and each sheet of them divided into 5 classes of problems (Basic Operators - Conditions - Loops - Lists/Arrays - Strings). These sheets were ordered based on the problem difficulty and grouped by the problem type. Finally, each sheet contains ~120 problems.
phase-1-1 | 140 problems | phase-1-2 | 120 problems | ||
---|---|---|---|---|---|
Basic Operator | 15 problems | solutions | Basic Operator | 10 problems | solutions |
Condition | 15 problems | solutions | Condition | 15 problems | solutions |
Loop | 35 problems | solutions | Loop | 20 problems | solutions |
String | 35 problems | solutions | String | 30 problems | solutions |
List / Array | 40 problems | solutions | List / Array | 40 problems | solutions |
phase-1-3 | 120 problems | phase-1-4 | 120 problems | ||
Basic Operator | 5 problems | solutions | Basic Operator | 5 problems | solutions |
Condition | 20 problems | solutions | Condition | 20 problems | solutions |
Loop | 25 problems | solutions | Loop | 20 problems | solutions |
String | 30 problems | solutions | String | 30 problems | solutions |
List / Array | 40 problems | solutions | List / Array | 45 problems | solutions |
The HackerEarth OJ sheets: phase-1-1, phase-1-2, phase-1-3, phase-1-4 contain implementation problems and basic programming problems. These sheets were ordered based on difficulty. Each sheet contains ~100 problems. It's divided into 4 classes of problems (Input/Output - Bit Manipulation - Recursion - Operators).
phase-1-1 | 100 problems | phase-1-2 | 100 problems | ||
---|---|---|---|---|---|
Implementation | 25 problems | solutions | Implementation | 25 problems | solutions |
Implementation | 25 problems | solutions | Implementation | 25 problems | solutions |
Implementation | 25 problems | solutions | Implementation | 25 problems | solutions |
Implementation | 25 problems | solutions | Implementation | 25 problems | solutions |
phase-1-3 | 100 problems | phase-1-4 | 130 problems | ||
Implementation | 25 problems | solutions | Input / Output | 50 problems | solutions |
Implementation | 25 problems | solutions | Bit Manipulation | 40 problems | solutions |
Implementation | 25 problems | solutions | Recursion | 10 problems | solutions |
Implementation | 25 problems | solutions | Operators | 35 problems | solutions |
- If the student has a target to compete in the programming competitions like ACM-ICPC or Google CodeJam or Google KickStart or Facebook Hackercup or TopCoder Open TCO, so it's recommended to start with Codeforces sheets, TopCoder sheets, Spoj 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.
This level simply consists of 28 sheets, 6 sheets on URI Online Judge, 2 sheets on HackerRank Online Judge, 2 sheets on AtCoder Online Judge, 8 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). Related Training: Data Structures and Algorithms Training
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 7 classes of problems (Ad-Hoc - Strings - Data Structures - Mathematics - Graph - Paradigms - Geometry). These sheets were ordered based on the problem difficulty and grouped by the problem type. Finally, each sheet contains ~160 problems.
phase-2-1 | 160 problems | phase-2-2 | 160 problems | ||
---|---|---|---|---|---|
Ad-Hoc | 25 problems | solutions | Ad-Hoc | 25 problems | solutions |
Strings | 15 problems | solutions | Strings | 15 problems | solutions |
Data Structures | 15 problems | solutions | Data Structures | 15 problems | solutions |
Mathematics | 20 problems | solutions | Mathematics | 20 problems | solutions |
Graph | 40 problems | solutions | Graph | 40 problems | solutions |
Paradigms | 35 problems | solutions | Paradigms | 35 problems | solutions |
Geometry | 10 problems | solutions | Geometry | 10 problems | solutions |
phase-2-3 | 160 problems | phase-2-4 | 160 problems | ||
Ad-Hoc | 25 problems | solutions | Ad-Hoc | 25 problems | solutions |
Strings | 15 problems | solutions | Strings | 15 problems | solutions |
Data Structures | 15 problems | solutions | Data Structures | 15 problems | solutions |
Mathematics | 20 problems | solutions | Mathematics | 20 problems | solutions |
Graph | 40 problems | solutions | Graph | 40 problems | solutions |
Paradigms | 35 problems | solutions | Paradigms | 35 problems | solutions |
Geometry | 10 problems | solutions | Geometry | 10 problems | solutions |
phase-2-5 | 125 problems | phase-2-6 | 125 problems | ||
Ad-Hoc | 15 problems | solutions | Ad-Hoc | 15 problems | solutions |
Strings | 10 problems | solutions | Strings | 10 problems | solutions |
Data Structures | 10 problems | solutions | Data Structures | 10 problems | solutions |
Mathematics | 10 problems | solutions | Mathematics | 10 problems | solutions |
Graph | 50 problems | solutions | Graph | 50 problems | solutions |
Paradigms | 25 problems | solutions | Paradigms | 25 problems | solutions |
Geometry | 5 problems | solutions | Geometry | 5 problems | solutions |
The HackerRank OJ sheets: phase-2-data-structures, phase-2-algorithms-basics, These sheets contain linear and non-linear data structures problems plus advanced data structures problems, and basic algorithms problems. These sheets were ordered based on the problem difficulty and grouped by the problem type. Finally, each sheet contains ~120 problems.
data-structures | 120 problems | algorithms-basics | 120 problems | ||
---|---|---|---|---|---|
Arrays & Linked Lists | 20 problems | solutions | Warm-up & Recursion | 20 problems | solutions |
Stacks & Queues | 10 problems | solutions | Sorting | 15 problems | solutions |
Trees & Balanced Trees | 25 problems | solutions | Search | 25 problems | solutions |
Heap & Disjoint Set & Trie | 10 problems | solutions | Implementation I | 30 problems | solutions |
Advanced | 50 problems | solutions | Implementation II | 30 problems | solutions |
The AtCoder OJ sheets: phase-2-1, phase-2-2, These sheets focus on beginner contests (easy contests) and each sheet contains ~90 problems.
phase-2-1 | 90 problems | phase-2-2 | 90 problems | ||
---|---|---|---|---|---|
2016-2017 Beginner Contests | 20 problems | solutions | 2016-2017 Beginner Contests | 20 problems | solutions |
2018-2019 Beginner Contests | 30 problems | solutions | 2018-2019 Beginner Contests | 30 problems | solutions |
2020-2021 Beginner Contests | 40 problems | solutions | 2020-2021 Beginner Contests | 40 problems | solutions |
The Codeforces OJ sheets: phase-2-1, phase-2-2, phase-2-3, phase-2-4 contain B-Div2 problems, and each sheet of them divided into 5 classes of problems (Data Structure - Mathematics - String - Greedy - Brute Force). These sheets were ordered based on the problem difficulty and grouped by the problem type. Finally, each sheet contains ~120 problems. For the last 4 sheets phase-2-div3-contests that focus on div3-contests (easy contests) and contains ~100 contests, and phase-2-educational-contests, that focus on educational-contests (medium contests) and contains ~100 contests. Finally phase-2-gym-contests-1, phase-2-gym-contests-2 that focus on gym-contests that contains ~200 contests.
phase-2-1 | 120 problems | phase-2-2 | 130 problems | ||
---|---|---|---|---|---|
Data Structure | 10 problems | solutions | Data Structure | 20 problems | solutions |
String | 40 problems | solutions | String | 25 problems | solutions |
Mathematics | 25 problems | solutions | Mathematics | 35 problems | solutions |
Greedy | 30 problems | solutions | Greedy | 35 problems | solutions |
Brute Force | 15 problems | solutions | Brute Force | 15 problems | solutions |
phase-2-3 | 105 problems | phase-2-4 | 145 problems | ||
Data Structure | 30 problems | solutions | Data Structure | 30 problems | solutions |
String | 5 problems | solutions | String | 30 problems | solutions |
Mathematics | 35 problems | solutions | Mathematics | 40 problems | solutions |
Greedy | 25 problems | solutions | Greedy | 30 problems | solutions |
Brute Force | 10 problems | solutions | Brute Force | 15 problems | solutions |
phase-2-div3-contests | 100 contests | phase-2-educational-contests | 100 contests | ||
---|---|---|---|---|---|
Div3 Contests I | 20 Contests | solutions | Educational Rounds I | 20 Contests | solutions |
Div3 Contests II | 20 Contests | solutions | Educational Rounds II | 20 Contests | solutions |
Div3 Contests III | 20 Contests | solutions | Educational Rounds III | 20 Contests | solutions |
Div3 Contests IV | 20 Contests | solutions | Educational Rounds IV | 20 Contests | solutions |
Div3 Contests V | 20 Contests | solutions | Educational Rounds V | 20 Contests | solutions |
phase-2-gym-contests-1 | 115 contests | phase-2-gym-contests-2 | 110 contests | ||
GYM Contests 2 | 15 Contests | solutions | GYM Contests 2 | 10 Contests | solutions |
GYM Contests 3 I | 25 Contests | solutions | GYM Contests 3 I | 25 Contests | solutions |
GYM Contests 3 II | 25 Contests | solutions | GYM Contests 3 II | 25 Contests | solutions |
GYM Contests 3 III | 25 Contests | solutions | GYM Contests 3 III | 25 Contests | solutions |
GYM Contests 3 IV | 25 Contests | solutions | GYM Contests 3 IV | 25 Contests | solutions |
The LeetCode OJ sheets: phase-2-1, phase-2-2, phase-2-3, phase-2-4, phase-2-5, phase-2-6 contain linear and non-linear data structures problems, searching and sorting algorithms, and each sheet of them divided into 6 classes of problems (Array - LinkedList - Stack - Queue - Binary Tree - Heap Tree - HashTable) in addition to (Binary Search - Sorting - Divide and Conquer - Greedy - Bit Manipulation). These sheets were ordered based on the problem difficulty and grouped by the problem type. Finally, each sheet contains ~190 problems.
phase-2-1 | 200 problems | phase-2-2 | 210 problems | ||
---|---|---|---|---|---|
Array I | 40 problems | solutions | Array I | 50 problems | solutions |
Array II | 40 problems | solutions | Array II | 50 problems | solutions |
Array III | 40 problems | solutions | Array III | 50 problems | solutions |
Linked List | 10 problems | solutions | Linked List | 30 problems | solutions |
Stack | 50 problems | solutions | Stack | 10 problems | solutions |
Queue and Dequeue | 20 problems | solutions | Queue and Dequeue | 20 problems | solutions |
phase-2-3 | 170 problems | phase-2-4 | 180 problems | ||
Recursion | 30 problems | solutions | Binary Tree I | 30 problems | solutions |
Binary Tree | 30 problems | solutions | Binary Tree II | 30 problems | solutions |
Heap Tree | 30 problems | solutions | Binary Tree III | 30 problems | solutions |
Hash Table I | 30 problems | solutions | Heap Tree | 30 problems | solutions |
Hash Table II | 30 problems | solutions | Hash Table I | 30 problems | solutions |
Hash Table III | 20 problems | solutions | Hash Table II | 30 problems | solutions |
phase-2-5 | 190 problems | phase-2-6 | 200 problems | ||
Binary Search I | 35 problems | solutions | Binary Search | 30 problems | solutions |
Binary Search II | 35 problems | solutions | Greedy I | 40 problems | solutions |
Divide and Conquer | 20 problems | solutions | Greedy II | 40 problems | solutions |
Sorting I | 40 problems | solutions | Greedy III | 40 problems | solutions |
Sorting II | 40 problems | solutions | Bit Manipulation I | 25 problems | solutions |
Greedy | 20 problems | solutions | Bit Manipulation II | 25 problems | solutions |
The HackerEarth OJ sheets: phase-2-linear-data-structures, phase-2-non-linear-data-structures, phase-2-algorithms-searching, phase-2-algorithms-sorting, Each sheet contains linear and non-linear data structures problems, in addition to searching and sorting algorithms. These sheets were ordered based on the problem difficulty and each sheet contains ~100 problems.
linear-data-structures | 110 problems | non-linear-data-structures | 90 problems | ||
---|---|---|---|---|---|
Arrays 1D | 45 problems | solutions | Binary Tree | 10 problems | solutions |
Arrays Multi-dimensional | 40 problems | solutions | Binary Search Tree | 10 problems | solutions |
Stacks | 25 problems | solutions | Heaps / Priority Queues | 20 problems | solutions |
Queues | 5 problems | solutions | Hash Tables | 50 problems | solutions |
algorithms-searching | 120 problems | algorithms-sorting | 140 problems | ||
Linear Search | 15 problems | solutions | Bubble, Selection, Insertion, Merge | 40 problems | solutions |
Binary Search I | 50 problems | solutions | Quick, Count, Heap | 20 problems | solutions |
Binary Search II | 50 problems | solutions | Greedy Algorithms I | 40 problems | solutions |
Ternary Search | 5 problems | solutions | Greedy Algorithms II | 40 problems | solutions |
- If the student has a target to compete in the programming competitions like ACM-ICPC or Google CodeJam or Google KickStart or Facebook Hackercup or TopCoder Open TCO, so it's recommended to start with Codeforces sheets, TopCoder sheets, Spoj 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.
This level simply consists of 28 sheets, 4 sheets on HackerRank Online Judge, 8 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). Related Training: Advanced Data Structures and Algorithms Training
The HackerRank OJ sheets: phase-3-mathematics-1, phase-3-mathematics-2, phase-3-graph-string, phase-3-dynamic-programming, These sheets contain string, number theory, algebra, graph, greedy, mathematics, bit manipulation, and dynamic programming problems. These sheets were ordered based on the problem difficulty and grouped by the problem type. Finally, each sheet contains ~130 problems.
mathematics-1 | 120 problems | mathematics-2 | 120 problems | ||
---|---|---|---|---|---|
Fundamentals | 10 problems | solutions | Fundamentals | 10 problems | solutions |
Number Theory | 35 problems | solutions | Number Theory | 35 problems | solutions |
Combinatorics | 25 problems | solutions | Combinatorics | 25 problems | solutions |
Algebra | 25 problems | solutions | Algebra | 25 problems | solutions |
Geometry | 30 problems | solutions | Probability | 25 problems | solutions |
graph-string | 130 problems | dynamic-programming | 140 problems | ||
Graph Theory I | 30 problems | solutions | Bit Manipulation | 30 problems | solutions |
Graph Theory II | 30 problems | solutions | Dynamic Programming I | 40 problems | solutions |
Greedy | 25 problems | solutions | Dynamic Programming II | 30 problems | solutions |
Strings I | 20 problems | solutions | Dynamic Programming III | 30 problems | solutions |
Strings II | 20 problems | solutions | Constructive Algorithms | 10 problems | solutions |
The AtCoder OJ sheets: phase-3-1, phase-3-2, phase-3-3, phase-3-4, These sheets focus on Regular + Grand contests (medium contests) and contains ~60 contests
phase-3-1 | 70 problems | phase-3-2 | 70 problems | ||
---|---|---|---|---|---|
2016-2017 Regular Contests | 30 problems | solutions | 2016-2017 Regular Contests | 30 problems | solutions |
2018-2019 Regular Contests | 15 problems | solutions | 2018-2019 Regular Contests | 15 problems | solutions |
2020-2021 Regular Contests | 25 problems | solutions | 2020-2021 Regular Contests | 25 problems | solutions |
phase-3-3 | 55 contests | phase-3-4 | 55 contests | ||
2016-2017 Grand Contests | 20 contests | solutions | 2016-2017 Grand Contests | 20 contests | solutions |
2018-2019 Grand Contests | 20 contests | solutions | 2018-2019 Grand Contests | 20 contests | solutions |
2020-2021 Grand Contests | 15 contests | solutions | 2020-2021 Grand Contests | 15 contests | solutions |
The Codeforces OJ sheets: phase-3-1, phase-3-2, phase-3-3, phase-3-4 contain C-Div2/A-Div1 problems, and each sheet of them divided into 7 classes of problems (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 type. Finally, each sheet contains ~120 problems. For the last 3 sheets phase-3-div3-contests that focus on div3-contests (easy contests) and contains ~100 contests, and phase-3-educational-contests, that focus on educational-contests (medium contests) and contains ~100 contests. Finally phase-3-gym-contests-1, phase-3-gym-contests-2 that focus on gym-contests that contains ~200 contests.
phase-3-1 | 120 problems | phase-3-2 | 120 problems | ||
---|---|---|---|---|---|
Divide and Conquer | 10 problems | solutions | Divide and Conquer | 10 problems | solutions |
Graph | 15 problems | solutions | Graph | 10 problems | solutions |
String | 15 problems | solutions | String | 10 problems | solutions |
Data Structure | 20 problems | solutions | Data Structure | 20 problems | solutions |
Math and Number Theory | 30 problems | solutions | Math and Number Theory | 30 problems | solutions |
Greedy and Brute Force | 25 problems | solutions | Greedy and Brute Force | 20 problems | solutions |
Dynamic Programming | 10 problems | solutions | Dynamic Programming | 10 problems | solutions |
phase-3-3 | 120 problems | phase-3-4 | 130 problems | ||
Divide and Conquer | 10 problems | solutions | Divide and Conquer | 15 problems | solutions |
Graph | 10 problems | solutions | Graph | 10 problems | solutions |
String | 10 problems | solutions | String | 10 problems | solutions |
Data Structure | 20 problems | solutions | Data Structure | 20 problems | solutions |
Math and Number Theory | 30 problems | solutions | Math and Number Theory | 30 problems | solutions |
Greedy and Brute Force | 20 problems | solutions | Greedy and Brute Force | 20 problems | solutions |
Dynamic Programming | 10 problems | solutions | Dynamic Programming | 10 problems | solutions |
phase-3-div3-contests | 100 contests | phase-3-educational-contests | 100 contests | ||
---|---|---|---|---|---|
Div3 Contests I | 20 Contests | solutions | Educational Rounds I | 20 Contests | solutions |
Div3 Contests II | 20 Contests | solutions | Educational Rounds II | 20 Contests | solutions |
Div3 Contests III | 20 Contests | solutions | Educational Rounds III | 20 Contests | solutions |
Div3 Contests IV | 20 Contests | solutions | Educational Rounds IV | 20 Contests | solutions |
Div3 Contests V | 20 Contests | solutions | Educational Rounds V | 20 Contests | solutions |
phase-3-gym-contests-1 | 115 contests | phase-3-gym-contests-2 | 110 contests | ||
GYM Contests 2 | 15 Contests | solutions | GYM Contests 2 | 10 Contests | solutions |
GYM Contests 3 I | 25 Contests | solutions | GYM Contests 3 I | 25 Contests | solutions |
GYM Contests 3 II | 25 Contests | solutions | GYM Contests 3 II | 25 Contests | solutions |
GYM Contests 3 III | 25 Contests | solutions | GYM Contests 3 III | 25 Contests | solutions |
GYM Contests 3 IV | 25 Contests | solutions | GYM Contests 3 IV | 25 Contests | solutions |
The LeetCode OJ sheets: phase-3-1, phase-3-2, phase-3-3, phase-3-4 contain graph algorithms, mathematical algorithms, number theory, string algorithms, and dynamic programming problems, in addition to advanced data structures, Each sheet of them divided into 6 classes of problems (Binary Search - Divide and Conquer - Sort - Greedy - Graph - Breadth First Search - Depth First Search - Backtracking - Dynamic Programming). These sheets were ordered based on the problem difficulty and grouped by the problem type. Finally, each sheet contains ~180 problems.
phase-3-1 | 200 problems | phase-3-2 | 185 problems | ||
---|---|---|---|---|---|
Backtracking | 35 problems | solutions | Backtracking | 35 problems | solutions |
Breadth First Search I | 25 problems | solutions | Breadth First Search | 20 problems | solutions |
Breadth First Search II | 25 problems | solutions | Depth First Search | 20 problems | solutions |
Depth First Search I | 35 problems | solutions | Graph I | 30 problems | solutions |
Depth First Search II | 35 problems | solutions | Graph II | 30 problems | solutions |
Dynamic Programming | 50 problems | solutions | Dynamic Programming | 30 problems | solutions |
phase-3-3 | 190 problems | phase-3-4 | 190 problems | ||
Union Find & Binary Indexed Tree & Trie | 30 problems | solutions | Segment Tree & Suffix Array & Geometry | 30 problems | solutions |
Math I | 30 problems | solutions | Math I | 30 problems | solutions |
Math II | 30 problems | solutions | Math II | 30 problems | solutions |
String | 50 problems | solutions | String | 50 problems | solutions |
Dynamic Programming | 50 problems | solutions | Dynamic Programming | 50 problems | solutions |
The HackerEarth OJ sheets: phase-3-mathematics-strings-1, phase-3-mathematics-strings-2, phase-3-graph-1, phase-3-graph-2, phase-3-dynamic-programming-1, phase-3-dynamic-programming-2, phase-3-advanced-data-structures-1, phase-3-advanced-data-structures-2, Each sheet contains string, graph, greedy, mathematics, number theory, and dynamic programming problems, in addition to advanced data structures. These sheets were ordered based on the problem difficulty and grouped by the problem type, each sheet contains ~120 problems.
mathematics-strings-1 | 110 problems | mathematics-strings-2 | 110 problems | ||
---|---|---|---|---|---|
Basic Number Theory | 30 problems | solutions | Basic Number Theory | 30 problems | solutions |
Primality Tests | 30 problems | solutions | Basics of Combinatorics | 30 problems | solutions |
Totient Function | 10 problems | solutions | Inclusione-Exclusion | 20 problems | solutions |
Basics of String Manipulation | 40 problems | solutions | String Searching & Z Algorithm | 35 problems | solutions |
graph-1 | 150 problems | graph-2 | 150 problems | ||
Graph Representation | 35 problems | solutions | Depth First Search | 40 problems | solutions |
Breadth First Search | 35 problems | solutions | Shortest Path | 50 problems | solutions |
Depth First Search I | 40 problems | solutions | Spanning Tree | 30 problems | solutions |
Depth First Search II | 40 problems | solutions | Minimum Cost & Maximum Flow | 30 problems | solutions |
dynamic-programming-1 | 110 problems | dynamic-programming-2 | 120 problems | ||
Dynamic Programming I | 25 problems | solutions | Dynamic Programming I | 25 problems | solutions |
Dynamic Programming II | 25 problems | solutions | Dynamic Programming II | 25 problems | solutions |
Dynamic Programming 2D I | 25 problems | solutions | Dynamic Programming 2D I | 25 problems | solutions |
Dynamic Programming 2D II | 25 problems | solutions | Dynamic Programming 2D II | 25 problems | solutions |
DP and Bit Masking | 10 problems | solutions | DP and Bit Masking | 10 problems | solutions |
advanced-data-structures-1 | 120 problems | advanced-data-structures-2 | 110 problems | ||
Disjoint Sets | 30 problems | solutions | Segment Tree | 30 problems | solutions |
Trie | 20 problems | solutions | Binary Indexed Tree I | 30 problems | solutions |
Segment Tree I | 35 problems | solutions | Binary Indexed Tree II | 30 problems | solutions |
Segment Tree II | 35 problems | solutions | Suffix Tree & Suffix Array | 20 problems | solutions |
- If the student has a target to compete in the programming competitions like ACM-ICPC or Google CodeJam or Google KickStart or Facebook Hackercup or TopCoder Open TCO, so it's recommended to start with Codeforces sheets, TopCoder sheets, Spoj 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.
coming soon ...