Competitive Programming: For Beginners (2018)
Schedule
18:30 - 20:30 Wednesday, Week 8 - 14 (?) or 15 (?)
Recommended Textbook
- 挑战程序设计竞赛 (第 2 版) 秋叶拓哉 等
You can download PDF from the Internet (there is no copyright guarantee), or you can buy one from online.
Lectures
Hopefully, we will cover most of the important and nice points in the textbook.
- Lecture 1 (Week 8): Enumerating skills; dynamic programming. (Textbook 2.1, 2.3)
- Lecture 2 (Week 9): Mathematics fundamentals.
- Lecture 3 (Week 10): (Advanced) Data Structures.
Readings
You should do the reading BEFORE the lecture, otherwise you would probably have a lot of confusions.
- BEFORE Lecture 1: Textbook 1.1 - 1.6, 2.1 - 2.3
- BEFORE Lecture 3: 阅读并实现《挑战》或《训练指南》中线段树以及树状数组的相关部分,本讲座假定听众已经能独立实现线段树以及树状数组。
Exercises
You can do the exercises before the lecture, or after, as you like.
Hopefully we will discuss about the exercises from the last lecture before every lecture.
- Exercise 1: [problem set]
- Exercise 2: [problem set]