IOI Thailand League 2010

สำหรับปีพ.ศ. 2553 เว็บ Thailand OI รวมกับเว็บวิชาการดอทคอมได้ร่วมมือกันจัดการแข่งขัน IOI Thailand League 2010 โดยการแข่งขันจะแบ่งออกเป็นสามระดับและมีการแข่งขันทุกเดือน ระดับความยากของการแข่งขันจะไม่เกินการแข่งขัน TOI.C เดิมที่จัดที่เว็บ Thailand OI

สำหรับการแข่งขันในระดับที่ยากกว่านั้นจะมีการจัดเป็นครั้งคราว โดยจะมีการประกาศกำหนดการที่เว็บนี้ และที่ Programming.in.th เป็นครั้ง ๆ ไป

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

ตารางกำหนดการแข่งขันออนไลน์ TOI.C และ TOI.CPP ประจำปี 2552

ชื่อรายการแข่งขัน วันที่จัดการแข่งขัน เวลา หมายเหตุ
TOI.C:01-2009 วันเสาร์ที่ 16 พฤษภาคม พ.ศ. 2552 13.00 - 16.00 น. เสร็จสิ้นแล้ว
TOI.CPP:02-2009 วันอาทิตย์ที่ 31 พฤษภาคม พ.ศ. 2552 19.00 - 22.00 น. เสร็จสิ้นแล้ว
TOI.CPP:03-2009 วันเสาร์ที่ 13 มิถุนายน พ.ศ. 2552 19.00 - 22.00 น. เสร็จสิ้นแล้ว
TOI.C:04-2009 วันอาทิตย์ที่ 28 มิถุนายน พ.ศ. 2552 19.00 - 22.00 น. เสร็จสิ้นแล้ว
TOI.CPP:05-2009 วันเสาร์ที่ 25 กรกฎาคม พ.ศ. 2552 19.35 - 22.35 น. เสร็จสิ้นแล้ว
TOI.CPP:06-2009 วันพฤหัสบดีที่ 29 ตุลาคม พ.ศ. 2552 19.40 - 22.40 น. เสร็จสิ้นแล้ว
TOI.C:07-2009 วันเสาร์ที่ 14 พฤศจิกายน พ.ศ. 2552 19.00 - 22.00 น. เสร็จสิ้นแล้ว
TOI.CPP:08-2009 ยังไม่กำหนด ยังไม่กำหนด ยังไม่เริ่มแข่ง

กองซ้อนและแถวคอย ( Stack and queue )

สวัสดีครับทุกท่าน

เอนทรี่แรกของผมเอนทรี่นี้จะเป็นการขอแนะนำกระบวนการทำงานเกี่ยวกับโครงสร้างข้อมูล (Data Structure) พื้นฐานรูปแบบหนึ่ง ที่เรียกกันว่า stack และ queue ครับ

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

โครงสร้างข้อมูล Union-Find

Union-Find Data Structure คือ โครงสร้างข้อมูลแบบหนึ่ง ที่เอาไว้ใช้สำหรับข้อมูลที่อยู่ในรูป Disjoint Set

Disjoint Set คืออะไร

Disjoint Set ก็คือ เวลาเรามี Universe ที่ประกอบด้วยสมาชิกจำนวนหนึ่ง แล้วเราแบ่งมันเป็น set ย่อยๆหลายๆเซต ที่มีคุณสมบัติดังนี้

  • ถ้าหยิบมาสองเซตย่อยใดๆ จะ intersection กันได้เซตว่าง (สองเซตใดๆไม่มีสมาชิกซ้ำกัน)
  • ทุกเซต union กันได้ Universe (ต้องมีสมาชิกครบ Universe)

การหา Big-O เบื้องต้น (Introduction to Big-O Notation)

พูดง่ายๆแล้ว Big-O Notation หรือ สัญกรณ์โอใหญ่ คืออะไรที่ช่วยเราประมาณ ว่าเวลาในการรันอัลกอริธึม(ส่วนใหญ่จะคิดในกรณีที่แย่ที่สุด หรือ worst-case) จะเป็นประมาณเท่าไหร่ หรือ จะใช้ประมาณเมมโมรี่ที่ใช้ก็ได้

ในบล็อกโพสต์นี้ จะขออธิบายการหา Big-O คร่าวๆก่อน (มีภาคต่อภายหลัง)

ขออภัยในความผิดพลาดของ TOI.C 04-2009 ครับ

เนื่องจากในการแข่งขัน TOI.C 04-2009 ครั้งที่ผ่านมา testdata ข้อ Stringfinder เกิดความผิดพลาดทางเทคนิคบางประการ ทำให้ผู้เข้าแข่งขันบางคนได้คะแนนน้อยกว่าปกติ (คะแนนหายไป 40 คะแนน) จึงขออภัยมาใน ณ ที่นี้ ด้วยครับ

ทฤษฎีจำนวนเบื้องต้น(Number Theory) 1

ไม่ต้องเสียเวลาแนะนำตัวผู้เขียนกันเลยล่ะกันครับ มาทำความรู้จัก”ทฤษฎีจำนวนกัน”เลยดีกว่า

ทฤษฎีจำนวน คืออะไร

ทฤษฎีจำนวน เป็นสาขาหนึ่งของคณิตศาสตร์บริสุทธิ์ ซึ่งศึกษาเกี่ยวกับคุณสมบัติของจำนวนเต็ม
ส่วนทฤษฎีจำนวนเบื้องต้นที่ผู้เขียนจะเขียนในบล็อกนี้นั้น จะเป็นความรู้พื้นฐานของทฤษฎีจำนวน ซึ่งมีเนื้อหาหลัก ๆ เช่น การหารลงตัว, ตัวหารร่วม, ตัวหารร่วมมาก, Euclidean Algorithm และอื่น ๆ ซึ่งจะเขียนครั้งเดียวก็คงจะไม่จบ ผู้เขียนจะขอค่อย ๆ แยกเขียนต่อไปเรื่อย ๆ

SCC - Strongly Connected Component

สวัสดีครับๆ อันนี้ก็เป็น blog post อันแรกใน ThailandOI ของผม ถ้าอ่านแล้วมีข้อติชมตรงไหนก็โพสต์บอกใน comment ด้วยละกันนะครับ

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

ทำความรู้จัก Standard Template Library (STL)

ขอสวัสดี เพื่อน ๆ พี่ ๆ น้อง ๆ กับ Blog Entry แรก โดยผมเอง

เนื้อหาที่ผมจะเขียนส่วนใหญ่ คงจะไม่ได้สอนอะไรมากมาย แต่จะเน้นการนำไปใช้เฉพาะกิจเพื่อการเขียนโปรแกรมภาษา C/C++
ซึ่งจะสะดวกในการเขียนโปรแกรมแข่งขันมากขึ้นครับ

กำหนดการพลวัต 2 (Dynamic Programming 2)

(ทางผู้เขียนขอแนะนำให้ท่านอ่าน กำหนดการพลวัตเบื้องต้น ก่อนที่จะเริ่มอ่านหน้านี้นะคะ เพราะเนื้อหาจะต่อเนื่องกัน)

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

Syndicate content