เตรียมตัวค่าย 1/2 สอวน. มีเรื่องไรบ้างในปี 2025
ใน สอวน. คอมปี 2025 ที่จะถึงนี้หลังจากการเข้ามาของ TOI-Zero จะมีเนื้อหาอะไรในค่าย 1 และค่าย 2 ที่น้องๆควรเตรียมตัวไว้บ้างนะ


หลังจากที่ TOI-Zero เข้ามาเป็นส่วนหนึ่งของการสอบเข้า ค่าย 1 และค่าย 2 ก็คงจะมีการเปลี่ยนแปลงไปบ้างแหละ
ถึงแม้ว่าเนื้อหาจากทาง ค่าย สสวท. คงยังไม่น่าจะลงมาถึงค่าย 2 แต่เนื้อหาค่าย 1 ก็คงจะเปลี่ยนไปไม่น้อยเลย ทางเพจก็เลยจะมาคาดการณ์เล็กๆน้อยๆว่า ตอนนี้เนื้อหาของทั้งสองค่ายน่าจะมีอะไรแล้วบ้าง
ค่าย 1
สัญกรณ์ Big-O
จากการที่มีการเขียนโปรแกรมเข้ามาเพิ่มใน TOI-Zero แล้ว โจทย์บางส่วนอย่างกลุ่ม A2 และ A3 มีการใช้อัลกอริทึมบ้างแล้ว หลักๆที่น่าจะหนีไม่พ้นเลยคือเรื่องการคำนวณ Runtime หรือเวลาการทำงานของโปรแกรม และสัญกรณ์ Big-O
ซึ่งตัวหลักๆที่ต้องรู้ในเรื่องนี้ก็จะมี
- ความเข้าใจเรื่องขนาดของข้อมูลนำเข้า
- การประเมิน Big-O แบบคร่าวๆ อย่างเช่นการดูจำนวนลูป และจำนวนชั้นของลูป
ยังไม่ค่อยมั่นใจเท่าไหร่ว่าสัญกรณ์อื่นๆอย่าง Big-Theta หรือ Big-Omega จะออกไหม แต่อ่านไว้บ้างก็ได้
Data Structure
อย่างน้อยๆพวก Linear Data Structure เช่น Linked List, Stack, Queue น่าจะโผล่มาบ้างแล้ว อาจจะมาอยู่ในรูปของการใช้งานที่ Array ปกติทำไม่ได้ หรือไม่ก็อาจจะมีโจทย์แนวที่ต้องสร้าง Data Structure พวกนี้ขึ้นมาเองเลย ก็ดูไม่ค่อยเกินจริงสักเท่าไหร่อ่ะนะ
ตัวอื่นๆอย่าง Heap หรือ Hash Table อาจจะแค่ใช้งานอย่างเดียวไม่น่าถึงขั้นต้องเขียนเองอ่ะนะ แล้วก็คิดว่าคงจะยังไม่ได้ต้องเอาไปใช้ร่วมกับอัลกอริทึมอื่นๆเท่าไหร่ เชื่อว่าโจทย์น่าจะแค่ทำมาเพื่อให้ใช้งานพวกนี้เป็นซะมากกว่า
รูปแบบการแก้ปัญหา
หรือเรียกอีกอย่างว่า Problem Solving Paradigm ยังไม่น่าจะมีอะไรมากนัก ถึงแม้ว่าจะคัดคนด้วย TOI-Zero แล้วก็ตาม ตัวที่ออกในค่าย(ถ้ามี) คงไม่พ้นเรื่องการ ค้นหาแบบสมบูรณ์ (Complete Search/Brute Force) กับเรื่องขั้นตอนวิธีแบบละโมบ (Greedy Algorithm)
ตัวอื่นๆไม่น่าจะออกในค่าย 1 แต่จะไปอยู่ในค่าย 2 แทน 😆
String
อีกตัวนึงที่โผล่มาได้ตั้งแต่ค่าย 1 คือเรื่อง String ที่ส่วนมากแล้วก็คงไม่น่าพ้นการหา substring หรือไม่ก็พวก การแก้ String เล็กๆน้อยๆ ที่ทำได้โดยวิธี Brute Force อยู่ดี
อัลกอริทึมอื่นๆที่ฉลาดๆหน่อยจะไปอยู่ค่าย 2 ซะหมด
ค่าย 2
รูปแบบการแก้ปัญหา
หลักๆเลยที่จะเพิ่มมาจากค่าย 1 คือเรื่อง Divide and Conquer และ Dynamic Programming ซึ่งจะเป็นเรื่องสำคัญมากในการทำ Competitive ต่อไป
ตัวที่น่าจะเน้นสุดๆในค่ายนี้คือ Dynamic Programming ที่โดยปกติแล้วออกสอบท้ายค่ายทุกครั้งคู่กับอีกตัวนึงคือเรื่อง Graph
Graph
ยังไงก็ออก ออกทุกปี ไม่เคยพลาด ตอนสอบจะมองออกไหมนี่อีกเรื่อง(แอดพลาดมาแล้ว)
เรื่องนี้ตอนเรียนเขาจะสอนหลายอัลกอริทึมที่พ่วงมาด้วยเลย เช่น Shortest Path, MST, Topological Sort และอื่นๆ ซึ่งมันมีเยอะมาก ถ้ากลัวเรียนในค่ายแล้วจำไม่หมด เรียนก่อนได้เลยฮะ จะได้ไม่งงตอนอยู่ในค่าย
String
นอกจากเรื่อง substring ในค่าย 1 อาจจะได้เจออัลกอริทึมที่เกี่ยวกับ String บ้าง เช่น Rabin-Karp หรือ KMP แค่นานๆทีจะเจอในข้อสอบสักรอบอ่ะนะ
ส่งท้าย
แต่ถึงรู้ว่ามันเป็นเนื้อหาอะไร สุดท้ายแล้วการมองโจทย์ให้ออกเป็นเรื่องสำคัญกว่านะฮะ อย่าไปยึดติดกับหัวข้อมากไป แล้วที่เขียนมานี่ก็เป็นแค่การคาดการณ์ของทางทีมเพจเรื่องเล่าชาวอัลกอเฉยๆ
ถ้ามีโจทย์หรือเนื้อหาอะไรอยากมา Discuss ก็มาคุยกันได้ในกลุ่มนะฮะ
กลุ่ม Facebook พูดคุยเรื่องสอวน.ถ้าชอบเนื้อหาที่เราเขียนก็อ่านเรื่องอื่นๆ ต่อได้ที่
บล็อก Practical Algorithmแล้วก็ติดตามได้ที่เพจ Facebook Page เรื่องเล่าชาวอัลกอ จะได้ไม่พลาดตอนเราโพสต์เนื้อหาใหม่ๆนะฮะ