Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
49 views16 pages

Master Competitive Programming

Download as pdf or txt
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 16

SYLLABUS

MASTER COMPETITIVE
PROGRAMMING

THIS COURSE IS IDEAL FOR


students who have learnt Data structures and algorithms and are now
planning to go the next step and learn Competitive programming. This
course is ideal for students planning to go for ACM-ICPC, Hackathons
and planning to appear for Internship or Placement drives in Tech Big-
wigs like Google, Facebook, Amazon or Microsoft.
MASTER COMPETITIVE PROGRAMMING

WHY SHOULD YOU DO


THIS COURSE?
Extremely important for Tech Bigwigs
All tech bigwigs like Google, Facebook, Apple, Microsoft,
Netflix, Amazon and many more required through
knowledge of DSA and Competitive Programming.
Great for competitions and Hackathons
Google's codejam, Facebook's Hackercup, ACM-ICPC
and a lot many coding competitions need you to be a
thorough competitive programmer to participate and
ace.
Optimized algorithms and code
You become one of those coders who are always looked
up to for efficient and most optimised code. This comes
in handy while designing and working on complex
applications, typically used in Fintech and other
industries.

COURSE HIGHLIGHTS
01 200+ Problems 03 FAANG course
Bonus
02 4/6 Months Duration 04 TMode of Delivery ,
Classroom, Online and
Live modes

THIS COURSE INCLUDES


FAANG Course as Bonus
200+ Hand Picked Questions
4/6 Months Duration
Certificate of completion and Certificate of Excellence
Placement assistance
MASTER COMPETITIVE PROGRAMMING

SYLLABUS
Introduction Welcome aboard
Welcome to the course
Vector
In this section we will learn about the container vectors which
are same as the dynamic arrays with the ability to resize itself
automatically.Since its a container it contains various functions
which come quite handy while solving the problems.
Strings
In this section we will learn about strings which is an alternative to
character array, String data type helps in handling string easier
and faster.With proper understanding of OOPs this concept
becomes more clear.

List
In this section we learn about the STL Lists which is based on the data structure Linked List
which store data in a non-contiguous manner.
Stacks
In this section we learn about the STL stacks which is based on the data structure Stacks
which follows the principle of Last In and First Out.
Queues
In this section we learn about the STL queue which is based on the data structure Queue
which follows the principle of First In and First Out. This data structure works just like a
normal queue does and it is mainly used as a helping data structure in Trees and Graphs.
Maps
In this section we will learn about Maps which stores the data in the mapped form of key-
STL

>value which is implement on the basis of Red Black Trees.


Priority Queue
In this section we will learn about the STL priority queue which is primarily based on heaps
which helps us understand how the infinite stream of data coming can be accessed to fetch
the useful information, for example, find the most sold products on any website?
Set
In this section we will learn about Sets which are internally implemented through BST
which store unique elements following a specific order.
Functions
In this section we will learn about various functions that are there in the STL which help us in
solving various problems easily like find, sort etc.
Policy based Data Structures
In this section we will learn about the some data structures that are not part of the STL but
are supported by the GCC. These data structures can be designed for high-performance,
flexibility, semantic safety, and conformance to the corresponding containers in std.
MASTER COMPETITIVE PROGRAMMING

SYLLABUS
Tries
It helps us to search in constant time and incase you want to
use auto suggestions features of Amazon, Flipkart or other sites
search bar this is the solution. Many problems such as
Maximum-Xor, and Maximum Sum etc. uses tries to help
improve complexity of the problem.
Persistent Tries
In this section we will understand the concept of persistency in
tries.

Binary Search
DATA STRUCTURES AND ALGORITHMS

This is where you learn how being greedy can benefit you to solve certain problems in a
faster way. The main point of focus here is to understand where we can apply Greedy over
Dynamic Programming.
Greedy Algorithms
In this section, we will understand how Bitwise operators like AND, OR, XOR, and NOT
work on machine code to help and write programs that works faster. This concept is also
very useful in Recursion as well as in Dynamic programming and Advanced DSA.
Bit Manipulation
In this section we will understand about geometry and problems related to them and
about convex hull.
Geometry And Convex Hull
TIn this section we will understand about geometry and problems related to them and
about convex hull..
Hashing
It helps us to understand how we can store, update and delete the data in constant time. It
is majorly used in Dynamic Programming and Graphs to help us make the time
complexities of the algorithms better.
Square Root Decomposition/Mo's Algorithm
In this section we will learn about Sqrt Decomposition which is a method (or a data
structure) that allows you to perform some common operations (finding sum of the
elements of the sub-array, finding the minimal/maximal element, etc.) in optimal time..
String Matching Algorithm
In this section we will learn about various string matching algorithm such as KMP
Algorithm, Z-Algorithm etc.
Heavy Light Decomposition
In this section we will learn about Heavy-light decomposition which allows us to effectively
solve many problems that come down to queries on a tree.
MASTER COMPETITIVE PROGRAMMING

SYLLABUS
Fast Fourier Transform
This data structure works just like a normal queue does and it is mainly used as a helping
data structure in Trees and Graphs.
Binary Trees and Binary Search Trees
In this data structure, we learn how to store data in a hierarchical format. It is one of the
most important topic from Interview point of view and questions from this topic is
frequently asked in companies such as Amazon, Microsoft, Flipkart and Google etc.
Game Theory
DATA STRUCTURE AND ALGORITHMS

In this section we will understand a new approach to deal with sequential game
problems.
Interactive Problems
In this section we will learn about interactive problems and how to approach them and
how they are different.
Theorems
In this section we will learn various theorams such as Totient,Fermat Little Theoram,
Miller Theoram, Wilson Theoram etc.
Basics
Inorder to understand Recursion we must understand Recursion, so this is what is
focussed here i.e. write codes using Recursion. It is used in Dynamic Programming and as
well as in data structure such as Trees, Graphs, and Heap etc.
Implementation Based
This section will be more focussed on the implemention of various problems using
RECURSION AND BACKTRACKING

recursion.
Quick Thinking
In this section we will learn we will combine what we have learned up until now and try
to solve other difficult problems.
Subset Based
In this section, we will understand how to solve algorithms such as phone search and
advanced concept of Knapsack that is mostly asked in Interviews.
Backtracking
It is the most important concept to understand in Recursion and it is thoroughly
checked in Interviews and Technical Rounds. If one has to master recursion they need to
master backtracking.
Advanced Backtracking
In this section we will try to solve much more difficult problems based on backtracting
and implementation.
MASTER COMPETITIVE PROGRAMMING

SYLLABUS
Segment Trees
In this section we will learn about segment trees which are the used to store
RECURSION AND BACKTRACKING

information about intervals/segments which in turn help us querying which of


the stored segments contain a given point.
Lazy Propagation
In this section we will learn to optimise our segment trees problems using lazy
propagation.
Persistent Segment Trees
In this section we will understand the concept of persistency in segment trees.
Fenwick Trees
In this section we will learn about the binary indexed tree/fenwick trees which
predominantly is used to efficiently update elements and calculate prefix sums
in a table of numbers.
Basics
We learn how we can improve the time complexities of Recursive algorithms
drastically using concepts like Top Down approach. Also we convert out Top
down approach to bottom up approach using the recurrence relation and DP
concept, it's exactly what is required for the master DP.
One Dimentional DP
In this section we will go through the DP problems dealing in One Dimention.
Grid Based DP and Two Dimentional DP
The most important concepts of DP are Knapsack, Optimal Game strategy, and
RANGE QUERIES

solving string problems using 2D storage there by improving their complexities


multiple folds.
Multidimentional DP
In this section we will go through the DP problems involving Multi-Dimention.
Atcoder DP Set
In this section we will go through all the problems of the famous atcoder dp
contest.
Longest Increasing Subsequence(Many Ways)
In this section will will understand the famous DP problem using different
technique.
MASTER COMPETITIVE PROGRAMMING

SYLLABUS
Introduction
In this section we will learn about graphs as a non linear data structure and
learn about its basic implementations and definitions.
Traversals(BFS and DFS)
In this section we will learn the various ways of traversal across graphs through
DP

algorithm like bfs and dfs.


Undirected Graph
In this section we will learn about undirected graphs and various algorithms
regarding them
Directed Graph
GRAPHS

In this section we will learn about directed graphs and various algorithms
regarding them.
Disjoint Set Union
In this section we will learn about Disjoin set and Union as a powerful tool in
solving various graph related problems.
Minimum Spanning Trees
In this section we will get a brief idea about mst and various algorithms
INTERVIEW QUESTIOSN AND EXPERIENCES

regarding them such as Prism's and Krushkal.


Shortest Path Algorithms (Dijkstras, Bellman Ford etc)
In this section we will learn about shortest path algorithms on a weighted
graphs such as Dijkstras, Bellman Ford and also Floyd Warshall Algorithm.
Implicit Graphs/ Splitwise Algorithm
In this section we will learn about splitwise app implementation and
Algorithm.
Network Flow
In this section we will learn about various network flow and various advance
algorithms such as Ford Fulkerson Algorithm, Minimum cut in a network flow.
LCA
In this section we will learn about LCA, Articulation Points and Bridges.
Problem Set
In this section we will go through all the concepts we have learned so far and
use them in advance problems related to them.
Top Tech Company Questions
Practise from the most asked questions in companies such as Amazon,
Facebook, Microsoft, LinkedIn, and Google etc. Become the programmer to
crack any of your dream company.
Google, Amazon, GoJek, Flipkart, Uber, Amex Interview mantras
This will give you an idea of how you should prepare yourself for the final
interviews and prepare yourself for everything that you may face during the
placement process of any company.
MASTER COMPETITIVE PROGRAMMING

PROJECTS

S
SNNAAKKEE
G
GAAMMEE

This project uses Arrays to build a very


interesting Snake game

Make your very own Sudoku solver with


Backtracking

This project uses concepts of DSA to


build Splitwise App

Design your very own Frog game while


using Greedy optimisation in DSA
Plan your travel when you build your
own application by using Graphs

Use DP optimisation to build this all time


favourite game and be a leader in your pack
MASTER COMPETITIVE PROGRAMMING

CHOOSE BATCH

Classroom Batch

Live Batch Online Batch

WHY CHOOSE CODING BLOCKS


Industry-vetted
01 Superb mentors 03 curriculum
Project based
02 learning 04 Superb placements

INSPIRATIONAL STORIES STORIES OF CB ALUMNI

Varun Gupta Anjali agarwal


SDE-1, Uber SDE-1, DE shaw and Co.
MASTER COMPETITIVE PROGRAMMING

Ashwani Agarwal Shrishti Suman


SDE-1,JP Moragn Chase and SDE-1, Amazon
Co.

Sidharth Bansal
SDE-1, Google

You Can Be One Of Them! 🚀


MASTER COMPETITIVE PROGRAMMING

OUR STUDENTS CAN BE FOUND IN

RETURN ON INVESTMENT

45x - 200x
After the completion of the course you will
get a ROI of 45 - 200x
MASTER COMPETITIVE PROGRAMMING

PLACEMENT ASSISTANCE
A dedicated Placement team along with Hiring Blocks, the placement portal of Coding
Blocks work round the clock to ensure the best of opportunities in the Tech arena are
available to you.

ALL THE HELP YOU NEED


01 Developer CV and Dev profile preparation

02 Interview preparation

150+ Partner companies for Placements and


03 internships

04 Mock interviews
MASTER COMPETITIVE PROGRAMMING

LEARNING CYCLE
MENTORS

Kartik Mathur Mosina Ashraf


Academics head and Founding Senior Instructor and Product
member engineer

Mayank Jha
Instructor and Product
Monu Kumar
engineer Senior Mentor & Product Engg
TEACHING ASSISTANTS

A wide network of TAs aka Teaching


assistants, who are typical ex-
students of Coding Blocks helps in
Doubt resolution along with
Mentors, through Video, Audio,
Screen share and other media to
ensure all your queries are
addressed timely

TAs
Your Code buddies
MASTER COMPETITIVE PROGRAMMING

LEARNING CYCLE
INDUSTRY EXPERTS

Industry experts are guides currently


working in Top companies like Google,
Amazon, Microsoft and the like and
they helps students with invaluable
tips on the Industry, Hiring process,
Mock interviews and other necessities
required for paving the way into the
Top Tech companies around the
globe.

Industry Coaches
PORTAL

Tech enabled learning


TThe e-learning portal is an in-house developed, state of the art application
which uses the best of technology and resources to ensure all learners gain the
maximum from their program. It provides immersive learning with
suggestions and guidance to ensure even self learning is effective and fruitful.
This portal allows learning through ebooks, videos, notes while allowing
learners to attempt coding problems, MCQ assignments with attending live
classes and asking doubts through chat and live video calling feature with
mentors and TAs.
MASTER COMPETITIVE PROGRAMMING

TESTIMONIALS

Manali Biswas Simarpreet Singh


Microsoft Microsoft

Shadma Siddiqui Aman Bansal


OYO Goldman Sachs

Srishti Kohli Rajat Gupta


Walmart Walmart
MASTER COMPETITIVE PROGRAMMING

CONTACT US
9999 579 111 Toll free number

1800 274 4504


CALL US

9999 579 222

9999 579 333


EMAIL US

admissions@codingblocks.com
info@codingblocks.com

PITAMPURA PITAMPURA
47, Nishant Kunj 360, Kohat Enclave
1 & 2 floor 2 floor
Pitampura Pitampura
New Delhi New Delhi

NOIDA SOLAN
Bridgekala, Near New
CENTRES

A-73, Sector 2
Near Sector 15 Metro station Bus Stand, Solan By-Pass
Noida National Highway
Uttar Pradesh Himachal Pradesh

https://www.codingblocks.com
WEB

https://online.codingblocks.com

You might also like