คู่มือโอลิมปิกคอมพิวเตอร์

Computer Olympiad Guide for Thai High School Students

เส้นทางเรียน Competitive Programming สำหรับนักเรียนไทย

อ่านตามลำดับค่าย สอวน. หรือค้นหาหัวข้อที่ต้องใช้ทบทวนได้ทันที บทที่มีป้าย โต้ตอบได้ มีแบบฝึกให้ลองเดินอัลกอริทึมทีละขั้นและทายคำตอบ

เริ่มต้น

Course orientation

  1. โครงสร้างเนื้อหาการสอน

ค่าย 1: Programming Basics

C++ syntax, STL basics, functions, and recursion

  1. C++ Syntax
  2. Standard Template Library
  3. Function
  4. Recursion โต้ตอบได้

ค่าย 2: Data Structures

Core structures and complexity analysis

  1. การเขียนโปรแกรมเชิงแข่งขัน
  2. Big O Notation โต้ตอบได้
  3. Stack and Queue โต้ตอบได้
  4. Linked List
  5. Dynamic Array โต้ตอบได้
  6. Binary Tree
  7. Heap โต้ตอบได้
  8. Priority Queue
  9. Binary Search Tree โต้ตอบได้
  10. Set and Map
  11. Graph Structure
  12. Hash Table โต้ตอบได้
  13. Review โต้ตอบได้

ต่อยอด: Algorithms

Greedy, search, dynamic programming, divide and conquer, and graph algorithms

  1. Greedy Algorithm โต้ตอบได้
  2. Array Manipulation โต้ตอบได้
  3. Search
  4. Dynamic Programming โต้ตอบได้
  5. Dynamic Programming Advanced โต้ตอบได้
  6. Ad-hoc Problems
  7. Divide and Conquer โต้ตอบได้
  8. Graph Algorithm โต้ตอบได้
  9. Topological Sort โต้ตอบได้
  10. Path and Circuit
  11. Resources

ค่าย สสวท.: IOI Training Camp

Advanced topics after POSN and TOI: data structures, DP optimization, and flow

  1. Advanced Data Structures
  2. DP Optimization
  3. Max Flow, Matching, and FPT