รูปแบบการแข่งขัน ของ คอมพิวเตอร์โอลิมปิกระหว่างประเทศ

การแข่งขันมีทั้งสิ้นสองวัน ในแต่ละวันนักเรียนแต่ละคนจะได้รับโจทย์ 3 ข้อ (บางปีอาจเป็น 4 ข้อ) และมีเวลาสำหรับแก้ปัญหา 5 ชั่วโมง ผู้เข้าแข่งขันจะต้องแก้ไขปัญหาด้วยตนเอง โดยมีคอมพิวเตอร์หนึ่งเครื่อง และไม่มีการช่วยเหลืออื่นใด เช่น การสื่อสารกับผู้แข่งขันคนอื่น การสื่อสารกับบุคคลภายนอก หนังสือ อินเทอร์เน็ต ฯลฯ โดยปกตินักเรียนจะต้องแก้ปัญหาโดยการเขียนโปรแกรมคอมพิวเตอร์ด้วย ภาษาซี, ภาษาซีพลัสพลัส หรือ ภาษาปาสกาล และส่งภายในเวลา 5 ชั่วโมงของการแข่งขัน หลังจากนั้นจะมีการตรวจโปรแกรมที่ส่งมาด้วยชุดข้อมูลทดสอบอันเป็นความลับ ซึ่งมีข้อมูลทดสอบจำนวนหนึ่ง (ปกติจะเป็น 10 หรือ 20 ข้อ) ผู้เข้าแข่งขันจะได้คะแนนสำหรับชุดทดสอบที่โปรแกรมทำงานถูกต้อง ภายในเวลาที่กำหนด และไม่ใช้หน่วยความจำเกินกำหนด โจทย์บางข้ออาจมีการตอบโต้ระหว่างโปรแกรมและไลบรารีหนึ่งซึ่งเป็นความลับ ทำให้ข้อมูลนำเข้ามีความแตกต่างกัน ขึ้นอยู่กับการตอบโต้ของโปรแกรม เช่นโจทย์เขียนโปรแกรมให้เล่นเกมให้ชนะ นอกจากนี้ยังมีปัญหาอีกชนิดหนึ่งซึ่งเปิดเผยชุดข้อมูลทดสอบให้กับนักเรียนระหว่างการแข่งขัน นักเรียนจะต้องแก้ปัญหาสำหรับข้อมูลทดสอบชุดนี้ และส่งคำตอบเท่านั้นโดยไม่ต้องส่งโปรแกรม ซึ่งนักเรียนอาจใช้การเขียนโปรแกรมแก้ปัญหา อาจทำด้วยมือ หรืออาจใช้การผสมผสานของสองอย่างนี้ก็ได้

คะแนนจากการแข่งขันทั้งสองวันจะนำมารวมกันสำหรับแต่ละคน จะมีการมอบเหรียญรางวัลหลังการแข่งขันจบ เหรียญรางวัลที่ได้ขึ้นอยู่กับคะแนนที่แต่ละคนทำได้ ผู้เข้าแข่งขันประมาณ 50% จะได้รับเหรียญรางวัล โดยมีอัตราส่วนของ เหรียญทอง:เหรียญเงิน:เหรียญทองแดง:ไม่ได้เหรียญรางวัล เป็น 1:2:3:6 (นั่นคือผู้เข้าแข่งขันหนึ่งในสิบสอง จะได้เหรียญทอง)

รูปแบบการแข่งขันอาจมีการปรับเปลี่ยนได้ ในการแข่งขัน IOI 2010 มีการเปลี่ยนมาใช้ระบบ RunC[1] ซึ่งจะตรวจโปรแกรมที่ส่งไปทันที (ต่างจากก่อนหน้านี้ซึ่งการตรวจจะดำเนินการหลังจบการแข่งขันแล้ว) ผูเข้าแข่งขันสามารถใช้โทเค็นในการให้ระบบตรวจแสดงผลลัพธ์จากการตรวจเพื่อที่จะนำมาปรับปรุงโปรแกรมให้ถูกต้องยิ่งขึ้น โทเค็นที่ให้ตอนเริ่มต้นจะมีเพียงเล็กน้อยและจะค่อยๆเพิ่มขึ้นเมื่อเวลาผ่านไป เนื่องจากระบบตรวจโปรแกรมทันทีที่ส่ง จึงได้มีการแสดงตารางคะแนนออนไลน์[2] เพื่อให้ผู้ชมต่างๆจากทั่วโลกสามารถชมผลการแข่งขันออนไลน์ได้ นอกจากนี้ระบบ RunC ยังถูกพัฒนาให้ใช้งานร่วมกับโปรแกรมแก้ไขข้อความ gedit ได้อีกด้วย

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

ในการแข่งขัน IOI 2012 มีการใช้ระบบ CMS [3] แทนที่ระบบ RunC

ใกล้เคียง

คอมพิวเตอร์ คอมพิวเตอร์ส่วนบุคคล คอมพิวเตอร์โอลิมปิกระหว่างประเทศ คอมพิวเตอร์โอลิมปิกระดับชาติ ประเทศไทย คอมพิวเตอร์กราฟิกส์ คอมพิวเตอร์วิทัศน์ คอมพิวเตอร์กราฟิกส์สามมิติ คอมพิวเตอร์แบบตั้งโต๊ะ คอมพิวเตอร์แอนิเมชัน คอมพิวเตอร์สตอกส์แอนด์บอนส์