কম্পেটিটিভ প্রোগ্রামিং ও নতুনদের শুরুর জন্য ১০টি অনলাইন জাজের রিভিউ
Tags: programmingcontest, onlinejudge, competitiveprogramming, beginners
Published: 2022-05-13 08:23:45

কম্পেটিটিভ প্রোগ্রামিং এর শুরুতে আসলে এত্ত এত্ত জাজ চোখে পরে যে অনেক সময় কোনটায় কখন প্রাক্টিস করবো বোঝা যায় না। আবার অনেক সময় প্রশ্ন জাগে যে কোনটা সবচেয়ে ভাল জাজ । তাই মুটামুটি কমন জাজ গুলোর একটা ইন্ট্রো দেওয়া ।

**Code Forces :** মোস্ট পপুলার অনলাইন জাজ , প্রবলেম এর কুয়ালিটি বেশ ভাল। সবচেয়ে ভাল দিক নিয়মিত কন্টেস্ট হয় এবং প্রচুর পারটিসিপেন্ট থাকে। যারা রেগুলার কন্টেস্ট করতে চায় তাদের জন্য আমার মতে সেরা প্ল্যাটফর্ম । অসুবিধার মধ্য পরে টপিক ভিত্তিক ভাবে গুছানো প্রবলেম পাওয়া, এছাড়া প্রচুর কন্টেস্ট হওয়াতে এই জাজে নতুন নতুন প্রবলেম অ্যাড হতেই থাকে। অনেক ক্ষেত্রেই নতুনরা এত প্রবলেম যাচাই বাছাই করতে পারে না ।

**Code Chef :** এখানেও রেগুলার কন্টেস্ট হয় । এদের লং কন্টেস্ট নতুনদের শিখার জন্য বেশ ভাল । প্রব্লেম স্টেটমেন্ট বেশ ক্লিয়ার এবং অনেক প্রবলেম স্টেটমেন্ট বাংলাতেও পাওয়া যায় । ওদের প্রবলেম গুলো বেশ সহজ ভাবে লিখা । এছাড়া এদের লারনিং সিরিজে নতুনদের জন্য গুছানো বেশ কিছু প্রবলেম এর কালেকশন আছে ।

**Hacker Rank :** কন্টেস্ট রেগুলার না হলেও ল্যাঙ্গুয়েজ স্পেসিফিক শিখার জন্য এবং টপিক বেসড শিখার জন্য বেশ ভাল। স্পেশালি সিপিপি এর STL শিখার জন্য খুবি ভাল কিছু মডিউল আছে ।

**Hacker Earth :** ওদের এলগও ভিজুলাইজেশন এর জন্য কিছু ফিচার শিখার জন্য বেশ ভাল। এছাড়া ওদের কোডমাঙ্ক মডিউলে মুটা মুটি স্টেপ বাই স্টেপ বেশ ভাল একটা গাইড দেওয়া আছে প্রবলেম সল্ভিং এর ।

**Light Oj :** টপিক বেসড শিখার জন্য খুবি ভাল একটা প্লাটফর্ম । ওদের প্রবলেম এর পরিমাণ কম । মোট হয়তো ৫০০ এরো কম । কিন্তু সব প্রবলেমি খুব ভাল কুয়ালিটির । যারা আইসিপিসি এর জন্য বা এই জাতীয় ফরম্যাট এর জন্য প্রস্তুতি নিচ্ছ তাদের জন্য খুবি ভাল।

**At Coder :** নতুনদের ইমপ্লেমেন্টেশন প্রবলেম প্র্যাকটিস এর জন্য খুবি ভাল । স্ট্যাটমেন্ট খুবি সহজ ভাবে লিখা । যাদের ইংলিশ একটু দুর্বল বা স্টেটমেন্টে চেয়েছে কি তাই বুঝতেই ধৈর্য শেষ তাদের জন্য খুবি ভাল । এছাড়া মুটা মুটি নিয়মিত কন্টেস্টো হয়।

**URI :** একেবারে অ আ ক খ এর জন্য চলে। তবে খুব বেশী প্রাকটিস না করাই ভাল । কেউ করলেও ১০০ এর মত সল্ভের পর বাদ দেওয়া ভাল।

**UVA :** বেশ পুরাতন জাজ । অনেক ভাল সমস্যা আছে এতে , কিন্তু স্টেট্মেন্ট গুলো অনেক বড় , অনেক ক্ষেত্রেই ইনপুট অউটপুট ফরম্যাট ঠিক করতে ভুগতে হয়। তাই প্রধান অনুশীলন এর জন্য না ব্যাবহার করাই ভাল। কিছু বাছাই করা সমস্যার জন্য ব্যাবহার করাই ভাল।

**SPOJ :** পুরাতন জাজ । অনেকটা আউটডেটেড । ভাল সমস্যা আছে , কিন্তু খুজে বের করতে সময় লাগে।

**TIMUS :** ম্যাথের অনেক ভাল প্রবলেম আছে । তবে জেনেরাল কেসে ভাল না খুব ।

সবশেষে নতুনদের ক্ষেত্রে, টপিক ধরে শিখার জন্য ভালও `LightOj` , ল্যাঙ্গুয়েজ প্রফিসিয়েন্সির জন্য `Hacker Rank` আর রেগুলার কন্টেস্ট এর জন্য `Code Forces` এবং `Code Chef` । আমার ব্যাক্তিগত অভিজ্ঞতার ভিত্তিতে মতামত দেয়া। অনেকের প্রেফারেন্স আলাদা হতে পারে।
কারন সব প্ল্যাটফর্মই ভাল ভাল প্রবলেম দেয়া আছে । তবে বেশিরভাগ ক্ষেত্রেই বাছাই করাটা কষ্টের আর সময় সাপেক্ষ। তাই নতুনদের এই চার প্ল্যাটফর্মের মধেই থাকা ভাল ।

Platform links:

- [Code Forces](https://codeforces.com)
- [Code Chef](https://www.codechef.com)
- [Hacker Rank](https://www.hackerrank.com)
- [Hacker Earth](https://www.hackerearth.com)
- [Ligh Oj](https://lightoj.com)
- [At Coder](https://atcoder.jp)
- [URI](https://www.beecrowd.com.br)
- [UVA](https://onlinejudge.org)
- [SPOJ](https://www.spoj.com)
- [TIMUS](https://acm.timus.ru)