موقع الويب |
---|
مسابقة البرمجة الجامعية الدولية (بالإنجليزية: International Collegiate Programming Contest) هي مسابقة برمجة تنافسية سنوية متعددة المستويات بين جامعات العالم. يقع مقر اللجنة الدولية للبطولات في جامعة بايلور، ويديرها المدير التنفيذي للجنة الدولية للشرطة الجنائية وأستاذ بايلور الدكتور ويليام.[2][3] وتغطي مسابقات إقليمية مستقلة في ست قارات، وتنتهي بنهائيات العالم العالمية التي تُعقد كل عام. في عام 2018، شارك في ICPC ما مجموعه 52,709 طالبًا من 3,233 جامعة في 110 دول.
تعمل ICPC تحت إشراف مؤسسة ICPC ووفقًا لاتفاقيات مع الجامعات المستضيفة والمنظمات غير الربحية، وكل ذلك وفقًا لسياسات وإجراءات ICPC.[4] من عام 1977 حتى عام 2017، كانت ICPC تُعقد تحت رعاية جمعية الحوسبة الآلية (ACM) وكانت تُعرف باسم ACM-ICPC.[5]
في عام 2018 ، ضمت مسابقة(ICPC) 52.709 طالبًا من 3233 جامعة في 110 دولة.
تعمل ICPC تحت رعاية مؤسسة ICPC وتعمل بموجب اتفاقيات مع الجامعات المضيفة والمنظمات غير الربحية، كل ذلك وفقًا لسياسات وإجراءات ICPC.
منذ عام 1977 ,حتى عام 2017، عقدت لجنة حماية الكابلات الدولية (ICPC) تحت رعاية ACM وتمت الإشارة إليها باسم ACM-ICPC.[3][6]
تعد مسابقات ICPC مسابقات فرق. تنص القواعد الحالية على أن يتكون كل فريق من ثلاثة طلاب. يجب أن يكون المشاركون طلاب جامعيين لم يتجاوزوا خمس سنوات من التعليم الجامعي قبل المسابقة. الطلاب الذين سبق لهم المشاركة في نهائيات العالم مرتين أو في خمس مسابقات إقليمية غير مؤهلين للمشاركة مرة أخرى.[7][8]
خلال كل مسابقة، يُمنح الفرق المؤلفة من ثلاثة أعضاء 5 ساعات لحل ما بين ثمانية وخمسة عشر مشكلة برمجة (ثمانية مشاكل تعتبر عادية للمسابقات الإقليمية واثنتا عشرة مشكلة للنهائيات). يجب عليهم تقديم الحلول كبرامج بلغة C، C++، Java، Ada، [9] Python،[10] أو Kotlin [11](على الرغم من أنه لا يُضمن أن تكون كل مشكلة قابلة للحل بأي لغة معينة، فإن موقع ICPC يوضح أن "القضاة سيكونون قد حلوا جميع المشاكل باستخدام Java و C++" سواء في المسابقات الإقليمية أو النهائيات العالمية). ثم تُشغَّل البرامج على بيانات اختبارية. إذا فشل البرنامج في تقديم الإجابة الصحيحة، يُخطَر الفريق ويمكنه تقديم برنامج آخر.
الفائز هو الفريق الذي يحل أكبر عدد من المشاكل بشكل صحيح. إذا لزم الأمر لترتيب الفرق للحصول على الميداليات أو الجوائز بين الفرق المتساوية، يتم تحديد ترتيب الفرق بناءً على مجموع أوقات الحل عند كل نقطة قدم فيها الفريق حلولًا صحيحة، بالإضافة إلى 20 دقيقة لكل تقديم مرفوض لمشكلة تم حلها في النهاية. لا يتم احتساب الوقت لمشكلة لم يتم حلها.[12]
بالمقارنة مع مسابقات البرمجة الأخرى (مثل الأولمبياد الدولي في المعلوماتية)، يتميز ICPC بعدد كبير من المشاكل (ثمانية أو أكثر في 5 ساعات فقط). ميزة أخرى هي أن كل فريق يمكنه استخدام جهاز كمبيوتر واحد فقط، على الرغم من أن الفرق تتكون من ثلاثة طلاب. وهذا يزيد من الضغط الزمني. لتحقيق الفوز، تحتاج الفرق إلى مهارات العمل الجماعي الجيدة والقدرة على تحمل الضغط.