-
Data Structure problems ( 20% ) Primitive data type in Python, Arrays, Strings, Linked Lists, Stacks, Queues, Priority Queues, Tree, Spanning Tree and Graph
-
Algorithms problems ( 20% ) Sorting, Greedy Algorithms, Divide and Conquer, Depth-First Search (DFS), Breadth-First Search (BFS), Binary Search, Shortest Path Algorithms, Dynamic Programming and Minimum Spanning Tree
-
Mathematical problems ( 30% ) Number Theory, Sets, Functions and Relations, Complex Number, Calculus, Prime Numbers & Sieve of Eratosthenes, Combinatorics, Factorials, Basic Counting, Combinations, Permutations, Binomial Coefficients, Matrix, Cartesian coordinates ,Statistics, Sequences and Series
-
Simulation problem ( 30% ) การแก้ไขปัญหาตามสถานการณ์สมมติที่โจทย์กำหนดให้ โดยใช้ความรู้พื้นฐาน Python
- โจทย์แต่ละข้อให้เขียนโปรแกรมด้วยภาษา Python ในการแก้โจทย์ข้อนั้น ๆ
- โจทย์แต่ละข้อจะมีการให้คะแนนแบบ Partial Scoring โดยแบ่งเป็น Testcase Score ( 10% ของคะแนนในโจทย์ ) คือ คะแนนความถูกต้องของชุดทดสอบในข้อนั้น ๆ Bonus Score ( 90% ของคะแนนในโจทย์ ) คือ คะแนนโบนัสที่จะได้รับเมื่อทำถูกหมดทุกชุดทดสอบในข้อนั้น ๆ สามารถกดส่งกี่ครั้งก็ได้ ไม่จำกัดจำนวน
- โจทย์แต่ละข้ออาจจะมีคำสงวน หรือ Restricted word เพื่อไม่ให้ใช้คำสั่ง หรือ Built-in function ใด ๆ ก็ตาม แต่จะมี Default Restricted word ของระบบไว้ ซึ่งผู้เข้าแข่งขันต้องระวังเรื่องการตั้งชื่อตัวแปร หรือชื่อฟังก์ชัน ไม่ให้มี Restricted word อยู่ในนั้น
- โจทย์มีความยากทั้งหมด 6 ระดับ คือ 0 ดาว - 5 ดาว ซึ่งในจำนวนดาวมากขึ้น จะมีความยากในเรื่องของวิธีการคิด และปริมาณงานที่ต้องทำมากขึ้น