หมวดโจทย์แข่ง

อ่านจบแล้วได้ท่าติดมือ ไม่ใช่แค่รู้ว่าข้อนี้ตอบอะไร

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

ปูพื้นฐาน 16 บท

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

บทปูพื้นฐาน

ผลรวมสะสมกับต้นไม้เฟนวิก: ตอบคำถามช่วงได้ทันที แม้ข้อมูลจะถูกแก้ระหว่างทาง

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

★☆☆☆☆ prefix sumBITพื้นฐาน อ่าน 25 นาที 6 ก.ย. 2026
บทปูพื้นฐาน

กราฟที่โจทย์ไม่ได้ให้มา: แปลงคำว่า "อย่างน้อยกี่ท่า" เป็นโค้ดชุดเดิมทุกครั้ง

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

★★☆☆☆ bfsstate spaceพื้นฐาน อ่าน 14 นาที 6 ก.ย. 2026
บทปูพื้นฐาน

DP บนต้นไม้: เขียนให้รอดต้นไม้ลึกแสนชั้น โดยไม่พึ่งสแต็กของระบบ

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

★★☆☆☆ treedpพื้นฐาน อ่าน 13 นาที 6 ก.ย. 2026
บทปูพื้นฐาน

แฮชสตริง: เทียบข้อความสองช่วงในเวลาคงที่ โดยรู้ตัวว่ากำลังแลกอะไรอยู่

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

★★☆☆☆ hashingstringพื้นฐาน อ่าน 13 นาที 6 ก.ย. 2026
บทปูพื้นฐาน

DP บนช่วง: จุดที่ต้องเลิกถามว่าทำอะไรที่ตำแหน่งนี้ แล้วหันไปถามทั้งช่วง

วิธีอ่านโจทย์ให้เจอสัญญาณว่า dp[i] ที่ใช้ได้มาตลอดกำลังจะพัง แล้วพาเปลี่ยน state จากจุดเป็นช่วง พร้อมเงื่อนไข "ตรงกลางต้องเกลี้ยง" ที่ทำให้ของคนละมุมมาเจอกันได้ พร้อมโจทย์ฝึก 3 ข้อที่ไล่ระดับกัน

★★☆☆☆ dpinterval dpพื้นฐาน อ่าน 22 นาที 27 ส.ค. 2026
บทปูพื้นฐาน

DP ที่สถานะคือความจำล่าสุด: เก็บอดีตให้น้อยที่สุดเท่าที่อนาคตยังต้องใช้

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

★★☆☆☆ dpstate compressionพื้นฐาน อ่าน 17 นาที 6 ก.ย. 2026
บทปูพื้นฐาน

สองตัวชี้กับหน้าต่างเลื่อน: เลิกนับใหม่ทุกช่วง แล้วเหลือแค่สองรอบของอาเรย์

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

★☆☆☆☆ two pointersพื้นฐาน อ่าน 13 นาที 7 ก.ย. 2026
บทปูพื้นฐาน

ไทร: ทำให้คำถามเรื่องส่วนหัวมีราคาเท่าความยาวคำถาม ไม่ว่าคลังจะใหญ่แค่ไหน

โครงสร้างที่คนมองว่าไว้เก็บคำ แต่ของจริงคือแผนที่ของสถานะ บทนี้ให้ทั้งการใช้แบบตรงไปตรงมา การพลิกไปใช้กับตัวเลขฐานสอง และวิธีคำนวณหน่วยความจำก่อนตัดสินใจใช้ ซึ่งเป็นขั้นที่คนข้ามแล้วตกทีหลัง

★★☆☆☆ triestringพื้นฐาน อ่าน 10 นาที 7 ก.ย. 2026
บทปูพื้นฐาน

นับก่อน แล้วค่อยเดิน: หาตัวที่ R ในกองที่ใหญ่เกินจะสร้างจริง

โจทย์ที่ขอ "ตัวที่ R ตามพจนานุกรม" กับโจทย์ที่ขอ "อันดับของตัวนี้" เป็นโค้ดชุดเดียวกันที่ต่างกันแค่ทิศทาง บทนี้ให้แม่พิมพ์นั้น พร้อมสองบักที่เกิดกับทุกคนอย่างน้อยครั้งหนึ่ง

★★☆☆☆ dpcountingพื้นฐาน อ่าน 11 นาที 7 ก.ย. 2026
บทปูพื้นฐาน

กราฟที่ทุกปมมีทางออกทางเดียว: รูปที่ล็อกไว้แล้ว จึงเดาโครงเฉลยได้ตั้งแต่อ่านโจทย์จบ

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

★★☆☆☆ functional graphtreeพื้นฐาน อ่าน 10 นาที 7 ก.ย. 2026
บทปูพื้นฐาน

เซกเมนต์ทรีกับการค้นหาคำตอบแบบไบนารี: คู่หูที่ปลดล็อกโจทย์ระดับยากได้ทั้งชั้น

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

★★☆☆☆ segment treebinary searchพื้นฐาน อ่าน 31 นาที 7 ก.ย. 2026
บทปูพื้นฐาน

แบ่งครึ่งเร่งดีพี: ตัดงานของทั้งแถวทิ้ง ด้วยคำตอบของช่องเดียวตรงกลาง

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

★★★☆☆ dpdivide and conquerพื้นฐาน อ่าน 20 นาที 10 ก.ย. 2026
บทปูพื้นฐาน

เร่งดีพีบนช่วงแบบคะนูธ: จุดตัดที่ดีที่สุดเดินไปทางเดียว จึงไม่ต้องส่องซ้ำ

ดีพีบนช่วงรูปที่พบบ่อยที่สุดยุบจาก O(n³) เหลือ O(n²) ได้ด้วยการเปลี่ยนขอบเขตของลูปในสุดสามบรรทัด บทนี้ปูสะพานสองอันที่ตำราข้าม คือทำไมต้องเป็นเพื่อนบ้านสองช่องนั้น และทำไมหน้าต่างที่แคบลงนิดเดียวถึงยุบได้ทั้งอันดับ พร้อมเกมเลือกลำดับตัดไม้ ตัวอย่างค้านที่ทำให้ตอบผิดแบบเงียบ ๆ และโจทย์ฝึกสามข้อจากคลังอ้างอิงของต้นทาง

★★★☆☆ dpinterval dpพื้นฐาน อ่าน 22 นาที 10 ก.ย. 2026
บทปูพื้นฐาน

เร่งดีพีด้วยเปลือกนูน: เมื่อทางเลือกทุกทางเป็นเส้นตรง ก็เหลือแค่เส้นที่ต่ำที่สุด

ดีพีที่ i กับ j พันกันอยู่ในวงเล็บเดียว ยุบจาก O(n²) เหลือ O(n) ได้ ถ้ากระจายวงเล็บนั้นออกมาแล้วเห็นว่าทางเลือกทุกทางคือเส้นตรง บทนี้ไล่ครบสามระดับ คือสแต็กกับตัวชี้ ค้นหาแบบไบนารีบนเปลือก และต้นไม้ลีเชา พร้อมกฎสองข้อที่ตัดสินว่าใช้อันไหน เกมหาเส้นที่ทิ้งได้ ตัวอย่างค้านที่เล็กที่สุดของการใช้ผิดระดับ และโจทย์ฝึกสี่ข้อไล่จากง่ายไปยาก

★★★★☆ dpgeometrysegment treeพื้นฐาน อ่าน 26 นาที 10 ก.ย. 2026
บทปูพื้นฐาน

ดิสจอยต์เซต: รู้ในพริบตาว่าสองคนอยู่ก๊วนเดียวกันไหม แม้ก๊วนจะรวมกันไปแล้วเป็นแสนครั้ง

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

★★☆☆☆ dsutreeพื้นฐาน อ่าน 27 นาที 10 ก.ย. 2026
บทปูพื้นฐาน

ต้นไม้บนแกนเวลา: เปลี่ยน "เพิ่มแล้วลบ" ให้เหลือแค่ "เพิ่มแล้วย้อนกลับ"

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

★★★★☆ dsusegment treeofflinedivide and conquerพื้นฐาน อ่าน 32 นาที 10 ก.ย. 2026

programming.in.th 36 ข้อ

โจทย์จริงจากคลังภาษาไทย หนึ่งข้อหนึ่งท่า เลือกอ่านตามท่าที่อยากได้ ไม่ต้องเรียงตามลำดับ

หยิบหนังสือ: เมื่อสูตรตอบไม่ได้ ให้เปลี่ยนคำถาม อย่าเปลี่ยนสูตร

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

★★★☆☆ dpstack อ่าน 7 นาที 26 ส.ค. 2026
ข้อ 2003

Miners: วิธีหาว่าอดีตส่วนไหนทิ้งได้ จนแสนชิ้นเหลือ 256 สถานะ

ท่าที่ฝึกคือการอัดสถานะ ซึ่งใช้ได้ทุกครั้งที่โจทย์มีคำว่า "สามชิ้นล่าสุด" หรือหน้าต่างที่เลื่อนไปเรื่อย ๆ ทุกอย่างเริ่มจากคำถามว่าอดีตส่วนไหนยังมีผลกับก้าวถัดไปจริง ๆ และวิธีนับว่ามันมีได้กี่แบบ พร้อมกองห้าชิ้นที่หักวิธีโลภ

★★★☆☆ dpstate compression อ่าน 9 นาที 5 ก.ย. 2026
ข้อ 2026

ปริศนา 15: บทเรียนเรื่องการอ่านโจทย์ให้เจอว่ามันขอน้อยกว่าที่คิด

คำว่าดีที่สุดซึ่งเราเติมเข้าไปเองคือกับดัก กระดานมีหน้าตาได้สิบล้านล้านแบบ แต่โจทย์ขอแค่ต่ำกว่า 5,000 ตา ท่าที่ได้กลับไปคือการล็อกของที่เข้าที่แล้ว เพื่อหั่นการค้นก้อนเดียวเป็นเจ็ดก้อนที่ก้อนใหญ่สุดมี 40,320 สถานะ

★★★☆☆ bfsconstructive อ่าน 10 นาที 6 ก.ย. 2026
ข้อ 2004

คู่ที่ได้ยินกัน: หมุนพิกัดเพื่อแยกเงื่อนไขสองแกนที่พัวพันกันออกจากกัน

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

★★★★☆ sweep lineBITprefix sum อ่าน 11 นาที 6 ก.ย. 2026
ข้อ 2006

สี่เหลี่ยมพิฆาต: หาโครงสร้างซ้ำในเงื่อนไข แล้วต้นทุนยุบสองพันเท่า

สองท่าที่หยิบไปใช้ต่อได้ตลอด คือการมองหาว่าเงื่อนไขก้อนใหญ่มีตัวมันเองซ่อนอยู่ข้างในไหม และการเอาแฮชสตริงมาทำให้การตรวจหนึ่งชั้นเหลือเวลาคงที่ ผลคือ 82,358,940,040 ครั้งยุบเหลือ 35,820,200 ครั้ง

★★★☆☆ hashingdpstring อ่าน 8 นาที 6 ก.ย. 2026
ข้อ 2000

โมบาย: ยุบกิ่งทั้งกิ่งให้เหลือป้ายสามแบบ จนไม่เหลือทางให้ตัดสินใจผิด

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

★★★☆☆ treedfsgreedy อ่าน 9 นาที 6 ก.ย. 2026
ข้อ 2032

ยิงธนู: เลิกจำลองกระดาน แล้วเปลี่ยนสนามทั้งสนามให้เป็นค่าน้อยสุดของช่วง

ข้อที่หนักที่สุดในคลังนี้ และเป็นข้อที่คุ้มที่สุดถ้าอยากเห็นการรื้อเฉลยจากลูกบาศก์ลงมาเหลือ N log N ทีละชั้น เริ่มจากตัดข้อมูลที่ไม่มีผลทิ้ง แล้วเปลี่ยนการจำลองเป็นสูตรปิด และปิดท้ายด้วยเหตุผลว่าทำไมไม่ต้องลองจุดเริ่มต้นครบทุกจุด

★★★★★ simulationinvariantbinary searchad hoc อ่าน 17 นาที 6 ก.ย. 2026
ข้อ 2007

กลิฟมายัน: หน้าต่างที่ขยับทีละหนึ่ง ควรเสียค่าตรวจแค่สองครั้ง

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

★★☆☆☆ two pointersstringad hoc อ่าน 8 นาที 7 ก.ย. 2026
ข้อ 2008

เครื่องพิมพ์โบราณ: เห็นไทรเมื่อไร ต้นทุนก็ถูกล็อกทันที เหลือตัวแปรให้เลือกตัวเดียว

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

★★★☆☆ triedfsgreedy อ่าน 11 นาที 7 ก.ย. 2026
ข้อ 2011

สวนหลวงสมดุล: เงื่อนไขที่พูดถึงทุกช่วง ยุบเหลือรางกว้างสองหน่วย

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

★★★☆☆ dpcountingstate compression อ่าน 11 นาที 7 ก.ย. 2026
ข้อ 2015

ใบเรือโจรสลัด: ฟังก์ชันนูนบอกคำตอบไปแล้ว เหลือแค่ใครได้เลือกก่อน

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

★★★★☆ greedyBITbinary search อ่าน 11 นาที 7 ก.ย. 2026
ข้อ 2016

ลำดับ DNA ตัวที่ R: นิยามที่เรียกตัวเอง ซ่อนการนับง่าย ๆ ไว้ข้างใน

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

★★★★☆ dpcountingstring อ่าน 11 นาที 7 ก.ย. 2026
ข้อ 2012

เครื่องเคลื่อนย้ายมวลสาร: ท่าโลภที่ตอบตัวอย่างถูกทั้งสองชุด แล้วยังผิดอยู่ดี

ข้อที่ควรอ่านถ้าเคยส่งแล้วตกทั้งที่ตัวอย่างผ่านหมด เพราะสูตรโลภที่ฟังดูสมเหตุสมผลที่สุดของข้อนี้ผิดตรงกรณีสุดท้ายพอดี และสิ่งเดียวที่จับได้คือตัวไล่วางทุกความเป็นไปได้แล้วจำลองจริง

★★★★☆ functional graphgreedyparity อ่าน 12 นาที 7 ก.ย. 2026
ข้อ 2009

เกาะกับสะพาน: เมื่อรูปของกราฟถูกล็อกไว้แล้ว เส้นทางยาวสุดเหลือแค่สองทรง

ข้อที่รวมสามท่าไว้ในข้อเดียว คือปอกใบทิ้งเพื่อหาวง เส้นผ่านศูนย์กลางของต้นไม้ และหน้าต่างเลื่อนบนวงที่คลี่เป็นสองรอบ พร้อมท่า 40 คะแนนที่ตรงไปตรงมากว่ามาก และบักเรื่องสะพานคู่ที่ตัวอย่างมือไม่มีวันจับได้

★★★★★ functional graphtreedp อ่าน 14 นาที 7 ก.ย. 2026
ข้อ 2005

ปิดถนนกันซ้อม: ขอบเขตที่ดูเป็นของแถม คือกุญแจของทั้งข้อ

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

★★★★★ treedpstate compressionparity อ่าน 13 นาที 7 ก.ย. 2026
ข้อ 2010

อัญมณีในท้องปลา: อย่าหักลบทีหลัง ให้ตั้งกฎว่าคำตอบเป็นของใครตั้งแต่แรก

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

★★★★★ countingsegment treegreedy อ่าน 13 นาที 7 ก.ย. 2026
ข้อ 2013

ฐานปิรามิด: ตารางล้านคูณล้านที่ไม่ต้องแตะสักช่อง

ข้อที่สอนการกลับด้านคำถามไปถามที่มุมของสิ่งที่เราวาง แล้วสิ่งกีดขวางกลายเป็นสี่เหลี่ยมบวกค่าที่กวาดเส้นจัดการได้ พร้อมบันทึกการรีดเวลาจาก 8.1 วินาทีให้เหลือ 3.8 วินาที ว่าตัวการอยู่ตรงไหน

★★★★★ binary searchsweep linesegment tree อ่าน 13 นาที 7 ก.ย. 2026
ข้อ 2014

กำแพงกับน้ำท่วม: ประโยคว่าพังทีละชั่วโมง แปลเป็นระยะทางบนกราฟได้ตรง ๆ

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

★★★★★ geometrybfsdfs อ่าน 14 นาที 7 ก.ย. 2026
ข้อ 2023

เม่นเดินซิกแซก: ช่องสีเทาคือคู่ที่บิตไม่ชนกัน จึงนับได้โดยไม่ต้องเดิน

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

★★★★☆ countingdpad hoc อ่าน 12 นาที 9 ก.ย. 2026
ข้อ 2024

ตั๊กแตนในทุ่งดอกไม้: เมื่อข้อห้ามกว้างแค่สามช่อง เก็บสี่อันดับแรกก็พอ

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

★★★★☆ dpad hoc อ่าน 13 นาที 9 ก.ย. 2026
ข้อ 2025

อุโมงค์ตัวตุ่น: พอรู้ว่าจะปิดเส้นไหน ที่เหลือไม่มีอะไรให้เลือกอีกแล้ว

ปิดอุโมงค์หนึ่งเส้นเปิดใหม่หนึ่งเส้น ให้ห้องที่ไกลกันที่สุดใกล้กันที่สุด บทนี้ตัดมิติของคำถามทิ้งด้วยการเขียนสูตรออกมาก่อน แล้วหาความยาวของสองก้อนให้ครบทุกเส้นด้วยการไล่ค่าขึ้นลงรอบเดียว

★★★★★ treedpbfs อ่าน 14 นาที 9 ก.ย. 2026
ข้อ 2027

บ่อน้ำมันสามผืน: เลิกเลือกบล็อก แล้วหันไปเลือกเส้นที่แบ่งกระดาน

สามสี่เหลี่ยมที่ไม่ทับกันบนตารางพันห้าร้อยคูณพันห้าร้อย ลากเส้นแบ่งได้เสมอ จึงเหลือแค่หกทรง บทนี้มีบักจริงที่ตอบตัวอย่างในโจทย์ถูก แล้วพังที่ตารางสองคูณสอง

★★★★☆ prefix sumdpad hoc อ่าน 13 นาที 9 ก.ย. 2026
ข้อ 2028

ห้องประชุมเมืองสิรุเสรี: จำนวนมากที่สุดเป็นแค่ครึ่งเดียวของโจทย์

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

★★★★★ greedybinary lifting อ่าน 14 นาที 9 ก.ย. 2026
ข้อ 2029

ปล้นตู้เอทีเอ็ม: กลุ่มที่วิ่งวนถึงกัน คือกองเงินกองเดียวที่ได้ครบเสมอ

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

★★★★☆ sccdfsdp อ่าน 13 นาที 9 ก.ย. 2026
ข้อ 2030

พิสัยของลำดับย่อย: เงื่อนไขอยู่ระหว่าง เขียนเป็นผลต่างของสองคำถามด้านเดียว

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

★★★☆☆ two pointersstackcounting อ่าน 12 นาที 9 ก.ย. 2026
ข้อ 2031

จ้างคนงาน: คนเดียวในทีมเป็นคนตั้งราคาให้ทั้งทีม

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

★★★★☆ greedyheap อ่าน 12 นาที 11 ก.ย. 2026
ข้อ 2033

POI: ค่าของโจทย์ตั้งโดยคนที่ทำไม่ได้

ค่าของแต่ละข้อรู้ได้ก็ต่อเมื่ออ่านผลของทุกคนครบ ข้อนี้จึงต้องเดินตารางสองรอบ และ Philip ถามแค่อันดับของตัวเอง จึงไม่ต้องเรียงทั้งตาราง แค่นับคนที่อยู่เหนือเขาด้วยการเทียบสามชั้น

★☆☆☆☆ simulationcounting อ่าน 8 นาที 11 ก.ย. 2026
ข้อ 2034

ลูกเกดบนแผ่นช็อกโกแลต: ลำดับการหั่นไม่มีผล สิ่งเดียวที่ต้องจำคือขอบสี่ด้านของบล็อก

หั่นแผ่นช็อกโกแลตห้าสิบคูณห้าสิบ ทุกครั้งจ่ายเท่าลูกเกดบนบล็อกที่หั่น ท่าหั่นให้สองซีกหนักเท่ากันผ่านตัวอย่างในโจทย์แต่แพ้ บทนี้ตัดลำดับทิ้ง แล้วเก็บค่าของบล็อกทุกก้อนไว้ในตารางสี่มิติ

★★★☆☆ dpinterval dpprefix sum อ่าน 10 นาที 11 ก.ย. 2026
ข้อ 2035

GARAGE โรงจอดรถ: ตอนมีรถรอคิว ช่องที่เพิ่งว่างคือช่องว่างช่องเดียว

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

★☆☆☆☆ simulationพื้นฐาน อ่าน 9 นาที 11 ก.ย. 2026
ข้อ 2037

แอร์เมสส่งจดหมาย: หลังส่งแต่ละฉบับ ตำแหน่งเหลือเลขที่ต้องจำแค่ตัวเดียว

ส่งจดหมายสองหมื่นฉบับตามลำดับ แค่ยืนบนถนนเส้นเดียวกับร้านก็ส่งได้ บทนี้ยุบตำแหน่งบนตารางสี่ล้านจุดเหลือสองเส้น แล้วแสดงว่าบนแต่ละเส้นมีจุดที่ควรไปยืนแค่จุดเดียว

★★★☆☆ dpstate space อ่าน 11 นาที 11 ก.ย. 2026
ข้อ 2038

ดูแลทางเดิน: ทางที่ถูกทิ้งไปแล้ว ไม่มีวันกลับมา

ทุกสัปดาห์วัวเจอทางใหม่หนึ่งเส้น แล้วต้องตอบว่าดูแลทางสั้นที่สุดเท่าไรให้ทุกจุดถึงกัน รัน Kruskal ใหม่หมดทุกสัปดาห์เฉียดเวลา บทนี้แสดงว่าทางที่ปิดวงไม่เคยต้องเรียกกลับ จึงถือแค่ต้นไม้ N - 1 เส้นข้ามสัปดาห์

★★★☆☆ mstdsugreedy อ่าน 10 นาที 11 ก.ย. 2026
ข้อ 2039

ส่งนินจาไปทำงาน: พอล็อกผู้จัดการแล้ว เหลือแค่ซื้อคนให้ได้มากที่สุด

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

★★★★☆ treeheapgreedy อ่าน 13 นาที 11 ก.ย. 2026
ข้อ 2040

Tournament: ใครชนะไม่สำคัญ ก้อนที่ถูกยุบสำคัญกว่า

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

★★★★☆ BITdsuoffline อ่าน 12 นาที 11 ก.ย. 2026
ข้อ 2041

นักชิม: หนึ่งวันคือการคูณเมทริกซ์หนึ่งครั้ง

ต้องออกจากเมือง 1 แล้วกลับมาให้พอดี T วัน โดย T ถึงพันล้าน ถนนยาวไม่เกิน 5 วัน จึงหั่นเมืองเป็นสำเนาให้ทุกถนนยาวหนึ่งวันเท่ากัน แล้วเดินทีละวันกลายเป็นคูณเมทริกซ์บนพีชคณิต max-plus ยกกำลังแบบทวิภาคข้ามช่วงที่ไม่มีเทศกาล

★★★★★ dpbinary liftingstate space อ่าน 14 นาที 11 ก.ย. 2026
ข้อ 2042

โชคชะตา: นับวิธีระบายเส้น ให้ทุกเส้นทางที่กำหนดมีจุดตัดอย่างน้อยหนึ่งจุด

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

★★★★★ treedpsegment treecounting อ่าน 13 นาที 11 ก.ย. 2026
ข้อ 2043

โศกนาฏกรรม: ขอบสี่ด้านของกรอบ บังคับปลายคู่ละข้างพอดี

นับคู่เหตุการณ์ที่ขึ้นทั้งสองแกนภายในกรอบ กุญแจคือคู่ที่นับมีเงื่อนไขติดตัวอยู่แล้วสองข้อ ขอบทั้งสี่จึงยุบเหลือปลายละข้อ แล้วหั่นแกนดัชนีเป็นบล็อกจนคู่แตกเป็นหกหมวด หมวดข้ามบล็อกแก้ด้วยการกวาดค่าจากน้อยไปมาก ปิดท้ายด้วยการไล่เวลาจาก 14.75 วินาทีเหลือ 3.66 โดยไม่แตะตรรกะเลยสักบรรทัด

★★★★★ offlineprefix sumBITcounting อ่าน 9 นาที 12 ก.ย. 2026