## Alpen Competitive Programming --- Weekly Problem List **[General Notes]** * Keep in mind that difficulty is relatively measured. * *Weeks* in this context does not necessarily mean seven days but instead is just a way to seperates sessions. * Problems are **not** in increasing level of difficulty, you may try the problems you think to be easier first. --- **[Competition Notes]** There are some competition which priority to participate is high. The highest being Olimpiade Sains Nasional (OSN), and supplementarily: - BNPCHS is a programming competition held by Binus University for High School Student. - Compfest is a programming competition held by Universitas Indonesia. The Junior Division is held for High School Student. - Schematics is a programming competition held by Institut Teknologi Sepuluh November. The Junior Division is held for High School Students. --- ### Weeks 0 > These weeks mark the beginning of competitive programming journey. Finish TLX *Pemrograman Dasar*. Problem are given in [**TLX *Pemrograman Dasar* Site**](https://tlx.toki.id/courses/basic-old). --- ### Weeks 1 >These weeks marks the end of TLX *Pemrograman Dasar*. No additional material to be taught for this week. --- ### Weeks 2 > These weeks introduce **Brute Force**. --- ### Weeks 3 > These weeks introduce the data structure: **Sets and Maps**. These weeks also focuses more on **Sorting Problems**. --- ### Weeks 4 > These weeks introduce **Prefix Sums**. --- ### Weeks 5 > These weeks introduce **Binary Search**. --- ### Weeks 6 > These weeks introduce **Greedy Algorithm**. --- ### Weeks 7 > These weeks introduce the basics of **Graph** which includes **Depth First Search** and **Tree Algorithm**. --- ### Weeks 8 > These weeks introduce the data structure: **Disjoint Set Union**, **Stack**, and **Queue**. --- ### Weeks 9 > These weeks introduce more concept of graph which includes **Breadth First Search** and **Shortest Path Algorithm**. --- ### Weeks 10 > These weeks introduce the basic of **Minimum Spanning Tree**. > --- ### Weeks 11 > These weeks introduce the basic of **Dynamic Programming**. --- ### Weeks 12 > These weeks introduce more concept of Dynamic Programming which includes **Knapsack** and **DP on Grids**. --- ### Weeks 13 > These weeks introduce data structure: **Fenwick Tree** and **Segment Tree**. --- ### Weeks 14 > These weeks introduce **Mathematics: Number Theory**. --- ### Weeks 15 > These weeks introduce **Mathematics: Combinatorics**. ---