ইনফরমেটিক্স অলিম্পিয়াড সম্পর্কিত কিছু প্রশ্নের উত্তর

শাফায়েত আশরাফ | ফেব্রুয়ারি ১৪, ২০১৪

১. আন্তর্জাতিক ইনফরমেটিক্স অলিম্পিয়াড(IOI)কি?

আন্তর্জাতিক ইনফরমেটিক্স অলিম্পিয়াড(IOI) স্কুল-কলেজের ছেলেমেয়েদের জন্য কম্পিউটার প্রোগ্রামিং প্রতিযোগীতা। এখানে এখানে বড় বড় সফটওয়্যার বানাতে হয়না, বরং মাথা খাটিয়ে এবং কম্পিউটার ব্যবহার সমাধান করতে হয় মজার কিছু সমস্যার।

২. আন্তর্জাতিক ইনফরমেটিক্স অলিম্পিয়াড এ অংশগ্রহন করার যোগ্যতা কি?

IOI তে অংশগ্রহণের জন্য প্রথমে বাংলাদেশ ইনফরমেটিক্স অলিম্পিয়াডে(BdIO)অংশগ্রহণে যোগ্যতা অর্জন করতে হবে। প্রথমে বিভাগীয় পর্যায়ে অংশগ্রহণ করে তারপর জাতীয় পর্যায়ের প্রতিযোগীতায় অংশ নিতে হয়। বিভাগীয় পর্যায়ে অংশ গ্রহণের সময় তোমাকে অবশ্যই কোনো স্কুল /কলেজের শিক্ষার্থী হতে হবে অথবা সর্বোচ্চ HSC/A-Level পরীক্ষার্থী হতে হবে। এছাড়াও তোমার বয়স ২০ এর কম হতে হবে।

৩. BdIO কখন অনুষ্ঠিত হয়?এর দিন-তারিখ সম্বন্ধে আমি কিভাবে জানতে পারি?

BdIO এর জন্য কোনো নির্দিষ্ট তারিখ নেই। আমরা স্কুল-কলেজে রশিক্ষার্থীদের সুবিধার কথা মাথায় রেখে সময় ঠিক করার চেষ্টাকরি। প্রতিযোগীতার সময়ের অন্তত এক মাস আগে ঘোষনা দেয়াহয়। এই ওয়েবসাইটে এবং আমাদের ফেসবুক পেজে তুমি আপডেট পাবে।

৪. আমি কিভাবে শুরু করব?

তুমি হয়তো ভাবছো প্রোগ্রামিং শেখা কঠিন কাজ তাই তুমি BdIO তে অংশ নিতে পারবেনা। কিন্তু এটা সত্যি না। তুমি যদি যুক্তি দিয়ে গুছিয়ে চিন্তা করতে পারো এবং গণিতে ভালো হও তাহলে প্রোগ্রামিং শেখা তোমার জন্য খুবই সহজ কাজ। তাই প্রথমকথা হলো কখনো হতাশ হওয়া যাবেনা। বিভাগীয় পর্যায়ে হয়তো তোমার প্রোগ্রামিং জানা দরকার হবে না,কিন্তু জাতীয় পর্যায়ে গিয়ে তোমাকে সি/সি++দিয়ে প্রোগ্রামিং শিখতে হবে। নিচের লিংকগুলোতে তুমি দরকারি পরামর্শ পাবে:

ইনফরমেটিক্স অলিম্পিয়াডের প্রস্তুতি (জাতীয় পর্যায়) ইনফরমেটিক্স অলিম্পিয়াডের প্রস্তুতি (বিভাগীয় পর্যায়)

৫. জাতীয় এবং বিভাগীয় পর্যায়ে কি ধরণের প্রশ্ন আসে?

বিস্তারিত জানতে উপরের লিংকগুলো দেখ। আর আগের বছরগুলোর প্রবলেমসেট নিচের লিংকগুলোতে দেয়া আছে:

২০১৩ সালের বিভাগীয় পর্যায়ের প্রবলেমসেট

বিগত কয়েক বছরের জাতীয় পর্যায়ের প্রবলেমসেট

৬. BdIO তে কি কি প্রোগ্রামিং ল্যাংগুয়েজ ব্যবহার করা যায়?

শুধুমাত্র সি এবং সি++।

৭. আমি Java/PHP বা C/C++ বাদে কোন ল্যাংগুয়েজে কোড করতে পারি। BdIO তে অংশগ্রহন করার জন্য আমার কি C/C++শেখা দরকার?

হ্যা তোমাকে অবশ্যই সি অথবা সি++শিখতে হবে,অন্যকোনো ল্যাংগুয়েজ BdIO তেব্যবহার করা যায়না। তুমি হয়তো মনে করতে পারো ব্যাপারটা ফেয়ার না কিন্তু আমরা মনে করি যেকোন একটা ল্যাংগুয়েজে কোড করতে জানলে নতুন আরেকটা ল্যাংগুয়েজ শেখা সহজ হয়ে যায়।যে একেবারে নতুন তার তুলনায় জাভা যে পারে তার জন্য সি/সি++শেখা অনেক সহজ।

৮. আমি C/C++দিয়ে কোড করতে পারি। BdIO তে ভাল করার জন্য এইটুকু কি যথেষ্ট?

না যথেষ্ট না। BdIO আসলেএকটা প্রবলেম সলভিং কনটেস্ট।এখানে প্রবলেম সলভ করতে হয় প্রোগ্রামিং এর সাহায্যে। তাই তুমি শুধু কোড করতে জানলেই হবেনা,তোমাকে প্রবলেম সলভ করতে জানতে হবে। উপরে দেয়া লিংকগুলোতে গেলে তুমি জানতে পারবে কি কি শিখতে হবে।

৯. আমি একটি সমস্যা সমাধান করেছি,কিন্তু accepted পাচ্ছিনা। কি করব?

তুমি যেকোন সময় ফেসবুকে গ্রুপে সাহায্য চাইতে পারো। এছাড়া অনলাইনে অনেক ফোরাম আছে সাহায্যের জন্য(uvaforum, topcoder forum, google!)। তবে সমস্যাটা নিয়ে যথেষ্ট চিন্তাভাবনা করার আগে সাহায্য চাওয়া ঠিক না, সবসময় অন্যের সাহায্য নিয়ে সমাধান করলে তুমি কিছু শিখতে পারবেনা। অন্যের সাথে কোড শেয়ার করার সময় pastebin.com সাইটটির সাহায্য নিবে, কোথাও সরাসরি কোড কপি-পেস্ট করবেনা।

আরো কোন প্রশ্ন থাকলে আমাদের সাথে ফেসবুকে গ্রুপে এবং পেজে যোগাযোগ করো।


শাফায়েত আশরাফ

২০১২ এর ন্যাশনাল প্রোগ্রামিং কন্টেস্টের চ্যাম্পিয়ন এবং বাংলাদেশ ইনফরমেটিকস অলিম্পিয়াডের প্রবলেমসেটার। বর্তমানে মেটার লন্ডন অফিসে এ সিনিয়র সফটওয়্যার ইঞ্জিনিয়ার হিসেবে কর্মরত।