في حال كنت أحد الأشخاص الذين يرغبون في البدء بتعلم البرمجة، فلا بد لك صديقي من أن تكون قد سمعت أو قرأت في مكانٍ ما عن مهارة حل المشكلات أو (problem Solving)، التي تهتم بتطوير قدراتك في التفكير المنطقي والقدرة على تحويل الأفكار إلى برامج حاسوبية صحيحة وفعالة.
في حال كانت هذه المرة الأولى التي تسمع بها عن هذا المفهوم، فلا تقلق فأنا هنا لمساعدتك.. ابقَ معي.
اقرأ أيضاً طرق للربح من تصميم مواقع الويب.. تعرف عليها لآن
ما موقع codeforces؟
كود فورسيس هو واحد من أهم المواقع الموجودة على الإنترنت اليوم في مجال حل المشكلات والمسابقات البرمجية.
يحتوي الموقع على عدد كبير من المسائل البرمجية التي تتناول عددًا من الخوارزميات وبناء المعطيات في تفاصيل حلها، كما ينظم الموقع مسابقات برمجية دوريًّا، ويتضمن عددًا من الميزات الأخرى التي سنتحدث عنها لاحقًا في هذا المقال.
قبل التسجيل في موقع codeforces
قبل أن تسجل في موقع كود فورسيس، يجب أن تمتلك الحد الأدنى من المعرفة البرمجية بإحدى لغات البرمجة، ويفضل أن تتعلم أساسيات الخوارزميات وتراكيب المعطيات، وهذا الأمر سوف يفيدك في تحقيق الفائدة الأكبر من استخدام موقع كود فورسيس.
بالطبع، لا أقصد هنا أن تتعلم كثيرًا من الخوارزميات قبل أن تبدأ بحل أي مسألة، بل أقصد أن تتعلم الأساسيات مثل خوارزمية الطمع والبحث الثنائي.
الأمر نفسه ينطبق على تراكيب المعطيات، إذ يكفي بطريقة أولية أن تتعلم مفهوم (المكدس) و (الرتل).
اقرأ أيضاً تعرف على أفضل مواقع صناعة المحتوى
التسجيل في موقع codeforces
عملية التسجيل في الموقع بسيطة جدًا، كل ما عليك فعله هو التالي:
1. ادخل على موقع كود فورسيس.
2. اضغط على Register.
3. اختر اسم مستخدم وضع الإيميل الخاص بك، سوف يرسل الموقع لك رسالة تأكيد على الإيميل.
4. افتح الإيميل الخاص بك وأضغط على الرابط المرسل لك.
هكذا تكون قد سجلت في الموقع بنجاح.. مبارك لك!
اقرأ أيضاً كل ما تريد معرفته عن وورد بريس WORDPRESS
كيف أختار المسائل المناسبة لي؟
بعد تسجيل الدخول إلى الموقع، اضغط على (problems set) من الشريط العلوي، بعدها اضغط على الصعوبة (إشارة صاعقة ويتضمن العمود الخاص بها أرقامًا) مرتين، وهكذا ستكون قد رتبت المسائل من الأسهل إلى الأصعب، ومن المهم أن تحل المسائل التي تتناسب مع مستواك لا أكثر لكيلا تحبط.
كما ذكرت لك، فإن الصعوبة الخاصة بكل مسألة تكون على السطر نفسه الخاص بها في مجموعة المسائل (problem set)، وتحديدًا في عمود الصعوبة الذي يمثل كما ذكرت مسبقًا بإشارة صاعقة.
كما تلاحظ من الصورة أعلاه عزيزي القارئ، فإن كل مسألة في مجموعة المسائل (Problems set) لها الخصائص التالية:
· اسم خاص بها: ومن الممكن أن يحوي تلميحًا إلى الحل، وهو في مثالنا هذا (Mishka and Game) وأما الحرف (A) فيعني أن هذه المسألة كانت أول مسألة في المسابقة البرمجية التي نشرت فيها للمتسابقين ليحاولوا حلها.
· التاغ (Tags): وهو الذي يدل على الخوارزمية أو الأسلوب أو حتى بناء المعطيات اللازمة لحل المسألة.. في مثالنا هذا يجب أن نكتب البرنامج كاملًا بأنفسنا أو ما يعرف بالمباشرة، أي أننا لن نستخدم خوارزمية ما لمساعدتنا مثل خوارزمية الطمع، بالطبع هذا فهمي الشخصي لمعنى (implementation) في المسائل البرمجية.
·الصعوبة: والتي تشير إلى مدى صعوبة حل المسألة، والتي هي في مثالنا (800) وهو أصغر رقم رأيته على الموقع، أي أن هذه المسألة من أسهل المسائل، ولكن هذا لا يعني أنك قادر على حلها، واعتقد أن السبب في إعطاءها صعوبة منخفضة هو العدد الكبير من الأعضاء الذين تمكنوا من حلها.
· عدد الأعضاء الذين تمكنوا من حلها: وهو آخر عمود في السطر الخاص بالمسألة، ويبلغ في مثالنا هذا (49813) عضوًا، كما تلاحظ من الصورة.
أما اللون الأخضر فيدل على أن هذه المسألة قد حللتها بنجاح، أما اللون الأحمر فيدل على إرسالك حلًّا خاطئًا.
بديل عن موقع codeforces
في حال لم تحب الواجهة الخاصة بموقع codeforces، أو لسببٍ ما لم ترغب في استخدام هذا الموقع، ففي هذه الحالة لدي البديل المناسب لك.
موقع leetcode هو بديل جذاب وجيد لموقع codeforces، ولديه عدد من الميزات من أهمها:
· يمتلك الموقع مجتمعًا كبيرًا من الأعضاء الذين من الممكن أن يكون الوجود معهم على المنصة نفسها منفعة كبيرة لأي شخص يرغب في تطوير قدراته البرمجية.
· وسيلة ممتازة للتحضير لمقابلات العمل الخاصة بالمجال البرمجي.
· يحتوي على مجموعة متنوعة من المسائل البرمجية المتفاوتة في الصعوبة.
· نظام تصنيف عالمي للأعضاء، ما يساعدك على مقارنة مستواك مع المطورين الآخرين في بلدك أو في باقي دول العالم.(يمتلك codeforces نظامًا مشابهًا له).
من المهم لأي مبرمج أن يطور قدراته في حل المشكلات، وحتى تتمكن من ذلك لا بد من الاستعانة بوسائل مساعدة فعالة، ومن أهم هذه الوسائل موقع codeforces، كما ذكرت لك أحد البدائل المقترحة لهذا الموقع ألا وهو موقع leetcode.
في الختام، أتمنى أن تخبرني رأيك في هذا المقال بالتعليقات، أو إذا كان لديك أي سؤال، فلا تتردد في طرحه.
يجب عليك تسجيل الدخول أولاً لإضافة تعليق.