<style>
.reveal .slides {
text-align: left;
font-size:30px;
}
</style>
# 2026 Introduction to Competitive Programming
2026 / 2 / 26
----
## Course Administration
<div style="font-size:25px">
### course link
- https://hackmd.io/@LeeShoWhaodian/2026I2CPsyllabus
<!-- ### Lab location
- ECG 809 -->
<!-- ### Coach
- William Hsu (Discord: wwyhsu#1083) -->
### Co-Coach
- 高程昱 (Discord: jakao)
### Lecturer
- 陳上恩 (Discord: \_shanc\_)
- 胡智涵 (Discord: zihan8130)
- 陳宏勝 (Discord: ._.asd)
</div>
----
## TA hour
任何時候都可以私訊講師,或是在群組發問
----
## Course Group Link
https://discord.gg/evjPU8QE

----
Competitive Programming 4
作者: Steven Halim, Felix Halim, Suhendry Effendy

算法競賽入門經典(第2版)
作者: 劉汝佳

----
## Competitive Programming
- Given well-known computer science problems, solve
them as fast as possible
- Using Data Structure and Algorithm Solving them
- Teamwork
----
## Goal
### annual team contest
- [NCPC](https://ncpc.nsysu.edu.tw/) (National Collegiate Programming Contest)
- [ICPC](https://www.icpc.tw/2025/) (International Collegiate Programming Contest)
- for college students
- most prestigious programming contest in the world.
- [ICPC playoff](https://apac.icpc.global/)
- around top 10-12 winner team (Except for the first place, each school at most 3 teams) in ICPC regional advance
- in Japan next year
----
## Prerequisite knowledge
- Time Complexity
- Brute Force Algorithm
- Prime / Binary Exponentiation
- Dynamic Programming
- Greedy
- Prefix Sum / Difference Array / Two Pointer
- Binary Search
- BFS/DFS / Graph
- DSU / Tree
- Divide and Conquer
[Pretrain Course](https://hackmd.io/@LeeShoWhaodian/2025pretrainingAutumnSyllabus)
----
## Course(不分順序)
<div style="font-size:15px">
<div style="position: absolute; right: 10%;">
- Tree
- Binary Lifting
- Lowest Common Ancestor
- Difference on Tree
- Graph
- Topological Sort
- Cycle Detection
- Eulerian Path/Curcuit
- DP on DAG
- Shortest Path
- Dijkstra
- 0-1 BFS
- Bellman-Ford
- Shortest Path Faster Algorithm
- Floyd-Warshall
</div>
<div style="position: absolute; left: 0%;">
- Math
- Extended Euclidean Algorithm
- Modular Arithmetic
- Combinations
- Chinese Remainder Theorem
- Inclusion-Exclusion Principle
- Dynamic Programming
- Classic DP
- Counting DP
- Bitmask DP
- Interval DP
- DP on Tree
- Digit DP
- Data Structure
- Binary Indexed Tree
- Segment Tree
<!-- - String
- Trie
- Hash
- KMP
- Zvalue -->
</div>
</div>
----
## Scoring
### Basic (90%)
- Homework 20%
- Mock Contest 18%
- Midterm Exam 26%
- Final Exam 26%
----
## Scoring
### Bonus (10% up)
- [CPE](https://cpe.mcu.edu.tw/)
- 1% (First 3 questions AC 2 problems)
- 1% per solved problem (Last 4 problems)
- [Ocean Cup](https://www.facebook.com/OceanCupProgrammingContest)
- 1% + 0.5% per solved problem
- [HP code wars?](https://www.facebook.com/codewars.taiwan/)
- 1% + 0.5% per solved problem
- Online Contests([Codeforces](https://codeforces.com/), [Atcoder](https://atcoder.jp/)) (5%)
- According to your participation times and contest performance
----
## Personal Homework
補題,把性向測驗
problem ??? 補完
submit to following link:
deadline: 3/4 23:59
{"slideOptions":"{\"transition\":\"fade\"}","title":"2026 Introduction to Competitive Programming","description":"2024 / 2 / 26\n上課講義 (課程簡介)","contributors":"[{\"id\":\"08326fa4-ca9b-4ca9-873e-239ebe76662c\",\"add\":4107,\"del\":702,\"latestUpdatedAt\":1769423586867},{\"id\":\"4f67a8cd-06ae-45dc-a8e3-62c6a41e5a37\",\"add\":277,\"del\":230,\"latestUpdatedAt\":1769438767528}]"}