0% found this document useful (0 votes)
31 views12 pages

Module-1 - Competitive Programming Beginner Course (Batch-1)

The document outlines a competitive programming course for beginners, detailing class materials, assignments, and links to video lectures and slides. It includes a structured curriculum covering topics from basic programming concepts to advanced algorithms, with various online judge problems for practice. Additionally, it provides links to contests and submission forms for tracking progress and participation.

Uploaded by

onceilovesabnaj
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views12 pages

Module-1 - Competitive Programming Beginner Course (Batch-1)

The document outlines a competitive programming course for beginners, detailing class materials, assignments, and links to video lectures and slides. It includes a structured curriculum covering topics from basic programming concepts to advanced algorithms, with various online judge problems for practice. Additionally, it provides links to contests and submission forms for tracking progress and participation.

Uploaded by

onceilovesabnaj
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

Module-1: Competitive Programming Beginner

Course

Course Materials :
Google Meet Video call link: https://meet.google.com/ckp-uqpv-peo
Classroom: https://classroom.google.com/c/NDk3MDEyMDQ2ODg1?cjc=oqb7j2e
Youtube Playlist: https://youtube.com/playlist?list=PLoa_roV 2ODg1?cjc=oqb7j2e

Class Assignment Contest Links :


hackerrank: https://www.hackerrank.com/cpbc-assignments-batch-1
Vjudge: https://vjudge.net/contest/510845
Classroom: https://classroom.google.com/c/NDk3MDEyMDQ2ODg1?cjc=oqb7j2e

Submit your Vjudge id and hackerrank id in the below form. Otherwise, your assignment won’t
be accepted :
https://forms.gle/8C3D5pXSRHviaQuBA

Class - 1: Introduction to Computer Programming and


Competitive Programming

Class Link: https://youtu.be/dNZkUu9eK_E

Slide Link:
https://docs.google.com/presentation/d/1lT3dfiaPvvNtmDRGMN2uF6OzFkAD7RLb6AvQc8jRuF
g/edit?usp=sharing

Discussed Topics :

1. Introduction to Computer Programming


2. Introduction to Competitive Programming
3. Introduction to Programming Contest
Class - 2: My Life story, Introduction to online judges and
Guideline for practice.

Class Link: https://youtu.be/VtZ1BV0L4Kk

Slide Link:
https://docs.google.com/presentation/d/1lT3dfiaPvvNtmDRGMN2uF6OzFkAD7RLb6AvQc8jRuF
g/edit?usp=sharing

Discussed Topics :

1. My Life story and motivation for doing competitive programming


2. Introduction to Online Judges
3. Guideline for Practice

Class - 3: Introduction to Codeforces Programming Contest


(Div-4, Div-3, Div-2, Edu, Div-1)

Class Link: https://youtu.be/S6bD5Snk3UE

Discussed Topics :

1. Introduction to Codeforces Contest


2. Div-4, Div-3, Div-2, Edu, Div-1
3. ICPC Style Ranklist, Codeforces Score RankList
4. What is codeforces rating? and how codeforces contests affect the rating.

Class - 4: Introduction to Different Famous Online and Onsite


Contests

Class Link: https://youtu.be/3YR2tEG2hLc

Slide Link:
https://docs.google.com/presentation/d/1lT3dfiaPvvNtmDRGMN2uF6OzFkAD7RLb6AvQc8jRuF
g/edit?usp=sharing

Discussed Topics :
1. Introduction to Onsite contest ( Divisional, National )
2. ICPC, NCPC, IUPC
3. Introduction to Online Contests
4. Google Codejam, Google Kick Start, Facebook hacker cup, Snack Down
5. Some Important links.

Class - 5: Write your first "Hello World" Program and solve your
first Online Judge Problem

Class Link: https://youtu.be/dMbvPqWYebc

Discussed Topics :

1. Write Your First Program “Hello World”


2. Solve Problem from BeeCrowd
3. Solve Easiest Problem of ACM ICPC Dhaka Regional Onsite Contest -2020
4. Variables and Data type ( int, long long, char )

All discussed online judge problems :


1. https://www.beecrowd.com.br/judge/en/problems/view/1000
2. https://algo.codemarshal.org/contests/diu_takeoff_fall_19/problems/A
3. https://algo.codemarshal.org/contests/icpc-dhaka-20/problems/K

Class tasks are given in the classroom.

Class - 6: Double, Float, bool, Taking Input (scanf), Operators (+,


-, * )

Class Link: https://youtu.be/kWfe0zOuR9c

Discussed Topics :

1. float and double data types


2. Taking input (int, long long, double, float, char)
3. Operators ( +, -, * )

All discussed online judge problems :


1. https://acm.timus.ru/problem.aspx?space=1&num=1000
2. https://www.beecrowd.com.br/judge/en/problems/view/1004

Class tasks are given in the classroom.

Class - 7: Fraction Operations and Modulus

Class Link: https://youtu.be/P9i7-hqrpDw

Discussed Topics :

1. Fraction Calculation
2. Modulus operation
3. Cyclic Pattern in Modulus

All discussed online judge problems :


1.
https://www.hackerrank.com/contests/cpbc-assignments-batch-1/challenges/class-6-a-task-1-a-
addition-subtraction-and-multiplication\
2. https://www.beecrowd.com.br/judge/en/problems/view/1006

Class tasks are given in the classroom, vjudge and hackerrank.

Class - 8: +=, -=, *=, /=, %=, increment(++), decreament(--) and


bitwise operators OR(|), AND(&), XOR(^)

Class Link: https://youtu.be/6iUiqhNmzrw

Discussed Topics :

1. More operators (+=, -=, *=, /=, %= )


2. Increment, decrement
3. Pre increment / decreament
4. Post increment / decreament
5. Bitwise operators OR(|), AND(&), XOR(^)
6. Patterns in XOR
7. An interesting Google interview question with XOR

References :
1. https://www.programiz.com/c-programming/c-operators
2. https://www.tutorialspoint.com/cprogramming/c_operators.htm

Class tasks are given in the classroom, vjudge and hackerrank.

Class - 9: Solve Last Five Year ACM ICPC Preliminary Contests


Easiest Problem and Precision Error.

Class Link: https://youtu.be/1ufnPRs3KQQ

Discussed Topics :

1. https://vjudge.net/contest/510845#problem/C
2. https://vjudge.net/contest/510845#problem/F
3. https://algo.codemarshal.org/contests/icpc-dhaka-20-preli/problems/J ( 2020 )
4. https://algo.codemarshal.org/contests/icpc-dhaka-19-preli/problems/I (2019 )
5. https://algo.codemarshal.org/contests/icpc-dhaka-preli-18/problems/A (2018)
6. https://algo.codemarshal.org/contests/icpc-dhaka-preli-2017/problems/F (2017)
7. https://algo.codemarshal.org/contests/icpc-dhaka-2016-preli/problems/A (2016)

Class tasks are given in the classroom, vjudge and hackerrank.

Class - 10: if-else Condition

Class Link: https://youtu.be/nWtVBWBC5zc

Discussed Topics :

1. Condition and comparison


2. Get Grades using marks
3. Get match joining validity using weight

Class tasks are given in the classroom, vjudge and hackerrank.


Class - 11: if-else Condition, How to think of the scenario not the
test case

Class Link: https://youtu.be/h-FFvB1grPs

Discussed Topics :

1.https://codeforces.com/problemset/problem/4/A
2. Think scenario not test case
3. https://atcoder.jp/contests/abc149/tasks/abc149_b

Class tasks are given in the classroom, vjudge and hackerrank.

Class - 12: Loops

Class Link: https://youtu.be/NMcLHpj7WjA

Discussed Topics :

1. Loops
2. While loop
3. For loop
4. Do-while loop
5. Infinite loop
6. Relationship of variables between parent block and child block

Class tasks are given in the classroom, vjudge and hackerrank.

Class - 13: Practice problems on Loops

Class Link: https://youtu.be/7B_v780IfGI

Discussed Topics :

1. How to handle test cases


2. Calculate int square root of n
3. Calculate the number of divisors of a number n
4. Fast discussed some loop problems from vjudge assignment contest
Class tasks are given in the classroom, vjudge and hackerrank.

Class - 14: Practice problems on Loops

Class Link: https://youtu.be/yHWJ_cgwOdQ

Discussed Topics :

1. https://leetcode.com/problems/three-divisors/
2. https://codeforces.com/contest/1560/problem/A

Class tasks are given in the classroom, vjudge and hackerrank.

Class - 15: Practice problems on Loops

Class Link: https://youtu.be/bHIu1LOFobQ

Discussed Topics :

1. https://atcoder.jp/contests/abc151/tasks/abc151_b
2. https://vjudge.net/contest/510845#problem/U
3. https://vjudge.net/contest/510845#problem/T

Class tasks are given in the classroom, vjudge and hackerrank.

Class - 16: Introduction to Arrays

Class Link: https://youtu.be/pkkpynx8dNY

Discussed Topics :

1. Introduction to Arrays
2. Count the frequency of elements in an array
3. https://atcoder.jp/contests/abc235/tasks/abc235_b

Class tasks are given in the classroom, vjudge and hackerrank.


Class - 17: Practice problems of Arrays

Class Link: https://youtu.be/g1aC8vIJwiw

Discussed Topics :

1.
https://www.hackerrank.com/contests/cpbc-assignments-batch-1/challenges/class-16-aa-task-1-
aa-count-the-frequency-i
2. https://atcoder.jp/contests/abc236/tasks/abc236_b

Class tasks are given in the classroom, vjudge and hackerrank.

Class - 18: Introduction to String

Class Link: https://youtu.be/w_RLhyb-o80

Discussed Topics :

1. Introduction to strings
2. reverse string
3. check string is palindrome or not
4. Multi dimension array
5. 2D, 3D array
6. Grid (input and output)
7. https://atcoder.jp/contests/abc233/tasks/abc233_b

Class tasks are given in the classroom, vjudge and hackerrank.

Class - 19: Practice Problems for 2D Array

Class Link: https://youtu.be/rvgdWR-Et2I

Discussed Topics :
1. https://vjudge.net/contest/510845#problem/AC
2. Convert char to digit
3. Convert digit to char
4. Indexing of char
5. https://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=ITP1_6_D

Class tasks are given in the classroom, vjudge and hackerrank.

Class - 20: Introduction to Bruteforce

Class Link: https://youtu.be/uY76fp4dbVo

Discussed Topics :

1. Brute force
2. https://codeforces.com/problemset/problem/304/A

Class tasks are given in the classroom, vjudge and hackerrank.

Class - 21: Introduction to Constructive and Practice Problem of


Bruteforce

Class Link: https://youtu.be/PPDrTZWvJts

Discussed Topics :

1. Practice Problem of Brute force


2. https://atcoder.jp/contests/abc234/tasks/abc234_b
3. Introduction to Constructive Algorithm
4. https://codeforces.com/problemset/problem/199/A
5. https://cses.fi/problemset/task/1070

Class tasks are given in the classroom, vjudge and hackerrank.


Class - 22: Introduction to Greedy

Class Link: https://youtu.be/nK3rQ4F_b7M

Discussed Topics :

1. Introduction to Greedy
2. Solving the knapsack problem with Greedy
3. Using the 0-1knapsack Problem proved that we can’t solve it using Greedy
4. https://codeforces.com/contest/514/problem/A

Class tasks are given in the classroom, vjudge and hackerrank.

Class - 23: Practice Problem to Greedy

Class Link: https://youtu.be/A5alszGmrjs

Discussed Topics :

1. https://codeforces.com/contest/1207/problem/A
2. https://cses.fi/problemset/task/1094

Class tasks are given in the classroom, vjudge and hackerrank.

Class - 24: Time and Memory complexity analysis

Class Link: https://youtu.be/evfL4GLeNec

Discussed Topics :

1. Time complexity
2. Big-O notation
3. O(1) Constant time complexity
4. O(n) Linear time complexity
5. O(n^2)
6. O(n^3)
7. O(log(n))
8. Polynomial time complexity
9. Exponential time complexity

Class tasks are given in the classroom, vjudge and hackerrank.

Class - 25: Introduction to Function

Class Link: https://youtu.be/ZaINdI2Y5TY

Discussed Topics :

1. Introduction to Function
2. Implement some important functions
3. swap, min, max
4. call by value
5. call by reference

Class tasks are given in the classroom, vjudge and hackerrank.

Class - 26: Starting Program to C++

Class Link: https://youtu.be/cjLmnlAOCPk

Discussed Topics :

1. Implement pow() function


2. Implement reverse function
3. Introduction to C++
4. I/O (cin, cout)
5. #define
6. typedef
7. making cin cout faster
8. set precision
9. built in functions (swap(), max(), min(), sqrt(), cbrt(), ceil(), floor()

Class tasks are given in the classroom, vjudge and hackerrank.


Class - 27: Builtin functions of C/C++

Class Link: https://youtu.be/CSRit7ryHZM

Discussed Topics :

1. Reverse
2. Sort function
3. Increasing order / non-decreasing order
4. Decreasing order / non-increasing order
5. isupper(), islower(), toupper(), tolower(), isdigit()
6. strcat(), strcmp(), strcpy(), strlen()
7. __gcd(), lcm()

Class tasks are given in the classroom, vjudge and hackerrank.

Contest - 1:

Contest link: https://vjudge.net/contest/532626


Solve class link: https://youtu.be/4RRlL0EiZMk

You might also like