• 3 min

เพิ่งทำข้อนึงเสร็จไป หาโจทย์ใหม่ๆ มาเลือกทำยังไงดี

บางทีจะหาโจทย์ทำทีนึงก็ไม่ได้หาง่ายขนาดนั้น แล้วเพิ่งทำเสร็จไปข้อนึงจะไปหาที่ไหนต่อดีล่ะ?

เป็ดไอคอนของเรื่องเล่าชาวอัลกอ Practical Algorithms
Practical Algorithms: เรื่องเล่าชาวอัลกอ
เพจที่อยากให้คนไทยมีเนื้อหาอัลกอริทึมดีๆ ให้ได้อ่านกัน
เป็ดชาวอัลกอนั่งจมอยู่กับกองกระดาษ แล้วไม่รู้จะเลือกกระดาษแผ่นไหนดี

เชื่อว่าหลายๆ คนก็คงจะเคยมีปัญหาว่าเจอโจทย์เยอะแยะเต็มไปหมด แต่ไม่รู้ว่าจะเลือกทำจากอะไรดี เพราะถ้าทำหมดก็จะเสียเวลาไปมากๆ (แต่ก็ได้ฝึกทุกเรื่อง; ซึ่งก็เป็นเรื่องที่ดี 👍) วันนี้พวกเราก็เลยจะมาแนะนำวิธีการวางแผนและเลือกโจทย์ที่เหมาะสมกันแต่ละคนกัน

ค่อยๆ ทำโจทย์ประเภทเดิมที่ยากขึ้น

บางคนอาจจะบอกว่าทำโจทย์เดิมๆซ้ำๆมันไม่ได้ประโยชน์ แต่เอาจริงๆเราคิดว่าการทำซ้ำๆเนี่ยเป็นการทำให้เรามอง Pattern ของโจทย์ประเภทนั้นๆได้ดีขึ้น และทำให้เราสามารถเรียนรู้วิธีการแก้ปัญหาได้หลากหลายรูปแบบมากขึ้นด้วย

  • เลือกจากเนื้อหาที่ชอบ/ถนัด

    ในหลายๆ ครั้งการทำโจทย์จากเรื่องที่เราชอบหรือมีความถนัดอยู่แล้วจะทำให้อยากทำโจทย์มากขึ้น แถมยังพัฒนาทักษะการทำโจทย์ได้เร็วขึ้นด้วย เพราะมันจะช่วยให้เราสามารถอ่านและทำความเข้าใจโจทย์ได้ง่าย และอาจจะเจอวิธีการแก้ปัญหาที่เราอาจจะเคยเห็นมาก่อนแล้วแล้วเอามาประยุกต์ได้ก็ได้

  • เลือกจากเนื้อหาที่อยากฝึก

    ถ้าอยู่ในค่ายหรือกำลังเรียนอยู่ แล้วรู้อยู่แล้วว่าเนื้อหามันจะเป็นเรื่องอะไร ก็เริ่มหาจากตรงนั้นก่อน โดยก็ filter หาเฉพาะข้อที่เนื้อหา ตรงกับที่อยากจะทำในเว็บ Competitive Programming หลายๆเว็บได้เลย บางเว็บเขาก็มีการเขียนบล๊อกมาแนะนำโจทย์ที่เกี่ยวข้องกับเนื้อหาที่เราอยากฝึกอยู่แล้ว

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

  • เลือกจากข้อที่มีเนื้อความคล้ายๆ กัน

    พอเวลาทำโจทย์ไปสักพักแล้วก็จะเจอโจทย์ที่เนื้อความคล้ายกับที่เคยทำไปก่อนหน้านั้น ส่วนใหญ่แล้วโจทย์หลายๆ ข้อจะเป็นแบบนี้ ทำให้สามารถเอาไอเดียของข้อที่เคยทำก่อนๆ มาพอช่วยในการคิดข้อที่ทำอยู่ได้ แต่ก็มีหลายครั้งที่โจทย์คล้ายๆ กันแต่เนื้อหาต่างกันสิ้นเชิงเหมือนกันนะ

หางานแข่ง online ทำ

ในส่วนใหญ่แล้วงานแข่ง online นี่แหละจะเป็นการฝึกโจทย์ที่ดีระดับนึงเลย ซึ่งมันก็ดีเพราะแต่ละงานแข่งจะมีการปะปนโจทย์หลายประเภทและหลายความยากเข้าด้วยกัน ประกอบกับมีเวลาจำกัดในการทำเพื่อแข่งกับคนอื่น ทำให้ฝึกในเรื่องการจัดการเวลากับโจทย์แต่ละข้อได้

แต่จะไม่เหมาะกับคนที่ไม่ค่อยมีเวลาว่างไว้สำหรับทำโจทย์โดยเฉพาะ และคนที่รับมือกับความกดดันไม่ค่อยได้ ซึ่งถ้าเป็นแบบนั้นก็แนะนำพวก Virtual Contest ก็ได้นะ ซึ่งจะเป็นการทำโจทย์แข่งกับตัวเองเองเท่านั้น เว็บที่มีการทำ Virtual Contest ก็จะมี Codeforces, Atcoder แล้วก็ CSAcademy (เท่าที่รู้อ่ะนะ; ถ้ารู้เพิ่มก็บอกด้วยก็ดี)

หรือจะรอเพจเราจัด contest ก็ได้นะ ยังไม่รู้หรอกเดือนไหน แต่ปี 2025 นี่แหละ 😄

ลากเพื่อนๆ มาช่วยหาด้วยกัน 555

บางครั้งการหาโจทย์มาทำเองก็อาจจะได้ไม่หลากหลายเท่าที่ควร ก็อาจจะไปชวนเพื่อนๆ มาเลือกโจทย์แล้วมาทำเอง/ ทำด้วยกัน/ ผลัดกันแนะนำโจทย์ก็ได้ จะได้มีโจทย์ที่หลากหลายขึ้น และถ้าทำเป็นกลุ่มก็จะอาจจะมีอารมณ์ร่วมในการทำโจทย์มากขึ้น (มั้ง)

วิธีอื่น

สุ่มมั่ว 555555

ถ้าสุดท้ายแล้วยังไม่รู้จะเลือกโจทย์อะไรดี ก็เลือกแบบมั่วๆ ไปเลย 😅 เพราะบางครั้งการเลือกโจทย์แบบนี้อาจจะทำให้ได้ไอเดียหรือแนวคิดใหม่ๆ ได้มากกว่าการเลือกตามความชอบหรือหัวข้อบางอย่าง ส่วนตัวแล้วแนะนำวิธีนี้ในเวลาหาโจทย์ปกติทำ

สุดท้ายนี้อยากจะฝาก Link สำหรับเลือกโจทย์จาก Codeforces โดยสามารถเลือกโจทย์ตามความยาก เนื้อหาที่เกี่ยวข้อง หรือจะสุ่มมั่วเลยก็ได้ เผื่อจะเป็นทางเลือกในการเลือกโจทย์สำหรับหลายๆ คน

ตัวสุ่มโจทย์มั่ว (Codeforces Randomizer)
0

บทความอื่นๆ