موقع Codeforces

اقرأ في هذا المقال


ما هو موقع Codeforces؟

موقع (Codeforces) يعد واحدة من أكثر المنصات شعبية لممارسة البرمجة التنافسية، حيث يتم استضافة المسابقات بانتظام على الموقع، كما يشارك أفضل المبرمجين وعشاق البرمجة التنافسية من جميع أنحاء العالم في هذه المسابقات. ويمكننا القول إنها تعطي أفضل تجربة تعليمية مع الكثير من المرح.

كما أن الموقع يحتوي على مجموعة من المشكلات البرمجية من المسابقات السابقة والتي تعد رائعة لتحسين مهاراتك الخوارزمية. وبناءً على أدائك في المسابقات التي تشارك فيها، فإنك تُمنح تقييم (كمقياس لكيفية أداءك في المسابقة).يشارك الأشخاص عادة في هذه المسابقات لتحسين مهاراتهم في كتابة الخوارزميات و الشفرات البرمجية، كما ويشاركون لرفع تقييمهم في الموقع.

دليل لأهم الميزات والأدوات على موقع الـ Codeforces:

علامة التبويب “Home”:

    • على يمين الصفحة، سترى العد التنازلي للمسابقات التي ستُعقد قريباً مع اسمها، تصنيفها (حسب الصعوبة إلى “div1″ و”div2” مع كون div1 أكثر صعوبة)، بالاضافة لرابط التسجيل لكل واحد منها (يجب عليك التسجيل في المسابقة للمشاركة فيها، وإذا نسيت التسجيل فلا يمكنك المشاركة).
    • المدونات (Codeforces Blogs): أحد أهم أجزاء الـ (Codeforces)، يكتب جميع المبرمجين المحترفين تقريبًا مدونات على الموقع بناءً على خبرتهم، فهم يشاركون حيلهم، وأحيانًا قد تكتشف خوارزميات جيدة حتى أنها لا تكاد تكون متاحة على أي مواقع ويب أخرى.

علامة تبويب Contests:

يقدم لك علامة التبويب هذه تفاصيل المسابقات القادمة والمسابقات التي أجريت سابقًا. في كل سطر سيكون هناك عرض لمحتوى مسابقة معينة ويُقسم كما يلي:

    • الدخول (Enter): عند دخول أي مسابقة سابقة، يمكنك الوصول إلى جميع الأسئلة كما هو الحال في مسائل التدريب.
    • المشاركة الافتراضية (Virtual Participation): هي بمثابة مسابقة افتراضية، في حال فاتتك أي مسابقة أو أردت المشاركة مرة أخرى. لن تتأثر تقييماتك بهذه المشاركة، لكنك سترى ترتيبك في قائمة الترتيب التي تم إنشاؤها مسبقا.
    • التصنيف النهائي (Final Standing): إنها قائمة الترتيب النهائية لجميع المشاركين في المسابقة، والتي توضح عدد الأسئلة التي قمت بحلها في تلك المسابقة.

علامة تبويب “Problemset”:

علامة تبويب هذه لممارسة آلاف الأسئلة من مواضيع مختلفة.ستستخدم علامة التبويب هذه كثيرًا، سيُعرض لك قائمة لمجموعة من المشاكل البرمجية، في كل مشكلة برمجية :

    • رمز السؤال: قسم الموقع الأسئلة بين المجموعات (A, B, C, D, E, F). تشير هذه التسميات إلى مستوى صعوبة الأسئلة من المستوى المبتدئ (A) إلى المستوى الخبير (E). ويساعد المبرمجين على اختيار المشكلات وفقًا لمجموعة مهاراتهم.
    • الاسم: اسم السؤال واضح جدًا، ولكن على الجانب الأيمن من هذا العمود يوجد نص رمادي بموضوعات الأسئلة (تعمل أحيانا كتلميح للحل)، لذا إذا كنت لا تريد رؤيتها، فيمكنك إيقاف ذلك من الإعداد في التقسيم الصحيح.
    • العمود 3: يوضح هذا العمود أيضًا الأسئلة التي تم حلها (الأسئلة التي تم حلها ملونة والتي لم يتم حلها تُترك فارغة).
    • العمود 4: يخبرك عن مستوى السؤال على شكل تصنيف رقمي، وكلما زاد التصنيف زادت صعوبة المشكلة.
    • العمود 5: إنها قائمة بجميع الحلول الصحيحة المرسلة لكافة الأشخاص الذين قاموا بحل السؤال.

طرق ارسال حلك على CodeForces:

  • يمكنك إما كتابة الكود مباشرة على محرر الموقع، فيمكنك النقر فوق خيار “submit” في الزاوية اليسرى العليا من صفحة السؤال.
  • أو يمكنك استخدام المحرر المتصل بجهازك، وإعداد حل وببساطة تحميل ملف البرنامج من “Submit” من الصندوق الموجود على يمين صفحة السؤال.

الملف الشخصي للمستخدمين الآخرين:

عندما تنقر على اسم مستخدم لشخص ما، يتم توجيهك إلى ملفه الشخصي.يخبرك ملف المستخدم عن جميع مسابقاته، وروابط لجميع مدوناته يمكنك إضافته كصديق (بجوار اسم المستخدم مباشرة ترى اشارة النجمة)، ويمكنك أيضاً إرسال رسالة (يمكنك ترك رسالة خاصة للمستخدم وإجراء محادثة بخصوص أي سؤال)، وكما يمكنك رؤية تصنيف للمستخدمين.

المصدر: A competitive programmer’s guide to effective coding with Codeforces? What is CodeforcesWhat do the labels A, B, C, and D mean in Codeforces?


شارك المقالة: