বাংলাদেশ ইনফরমেটিক্স অলিম্পিয়াড – বিভাগীয় প্রতিযোগিতায় ভালো করতে হলে

মীর ওয়াসি আহমেদ | ডিসেম্বর ০৫, ২০১২
বাংলাদেশ ইনফরমেটিক্স অলিম্পিয়াড এ বিভাগীয় পর্যায়ের প্রতিযোগিতার জন্য প্রস্তুতি নিতে যেসব টপিকের দিকে মনোযোগ দিতে হবে সেসব নিয়ে লিখেছেন মীর ওয়াসি আহমেদ।

তুমি বাংলাদেশ ইনফরমেটিক্স অলিম্পিয়াড ২০১৩ এর বিভাগীয় প্রতিযোগিতার খবর হয়তো জেনেছ। কিন্তু প্রশ্নের ধরণ – কি কি থাকবে, কিভাবে প্রস্তুতি নিতে হবে – কিছুই জানো না এখনো। তোমাকে সাহায্য করবার জন্যেই এই লেখা।

বিভাগীয় প্রতিযোগিতায় দুটো অংশে প্রশ্ন হয়ঃ অ্যানালিটিকাল আর প্রোগ্রামিং। এই পর্বে অ্যানালিটিকাল প্রশ্নই থাকে বেশিরভাগ। আর পুরো পরীক্ষাটাই হয় কাগজ কলমের। প্রোগ্রামিং অংশে প্রশ্নের সাথে কিছু ইনপুট দেওয়া থাকে যেগুলোর উত্তর কম্পিউটারে বের করে প্রশ্নপত্রের উত্তরের জন্যে নির্ধারিত ফাঁকা জায়গায় লিখতে হয়।

অ্যানালিটিকাল অংশটা বেশ গুরুত্বপূর্ণ। দেখা গেছে শুধু অ্যানালিটিকাল অংশে ভালো করে অনেকেই বিভাগীয় পর্যায় উতরে যায়। এই অ্যানালিটিকাল অংশে ভালো করতে হলে নিচের বিষয়গুলো দেখা যেতে পারে। পরে মনে পড়লে আরো যোগ করব।

  • গাণিতিক সমস্যা – এইচ এস সি লেভেলের জ্ঞান দিয়েই পারার কথা। কয়েকটা টপিক হতে পারে
    • সংখ্যাতত্বঃ বিভাজ্যতা, মৌলিক সংখ্যা, উৎপাদক, ল.সা.গু ও গ.সা.গু।
    • কম্বিনেটরিক্সঃ বিন্যাস, সমাবেশ ও সম্ভাব্যতা।
    • বীজগণিতঃ ধারা, অনুক্রম ও সমীকরণের সমাধান।
    • প্রমাণঃ গাণিতিক আরোহ পদ্ধতি।
    • জ্যামিতিঃ প্রাথমিক ধারণা (স্থানাঙ্ক জ্যামিতি সহ – কনিক বাদে) (খুব বেশি কঠিন জ্যামিতি কখনো আসেনি)।
  • পাজল
    • নিউরণে অনুরনণ ধাঁচের।
    • কিছু পাজল পুরোপুরি অ্যালগোরিদমিক হতে পারে। বিভিন্ন খেলা যেমনঃ সুডোকু (ক্লাসিকাল নয়), ননোগ্রাম (গতবারের বিভাগীয়তে এসেছিল)। এই ধরণের প্রশ্নগুলোর উত্তর বের করতে অনেক সময় লাগে। অন্য প্রশ্নের উত্তর করে সময় পেলে এই ধরণের সমস্যাগুলো ধরা উচিত। সময় কমাতে প্রোগ্রামিং ব্যবহার করা যেতে পারে। (অবশ্য তুমি যদি ভাগ্যক্রমে এই খেলাগুলোতে দক্ষ হয়ে থাকো তাহলে ভিন্ন কথা ;-) )।
  • প্রোগ্রামিং ল্যাংগুয়েজঃ ল্যাঙ্গুয়েজের প্রাথমিক ধারণাগুলো পোক্ত থাকলেই পারা যাবে। সুবিন ভাইয়ের বইয়ের (লিংক) চ্যাপ্টারগুলো আয়ত্ব থাকলে সমস্যা হবে না। এছাড়াঃ
    • রিকার্শন সম্পর্কে ধারণা থাকা উচিত।
    • বিভিন্ন ডাটা টাইপের রেঞ্জগুলো মনে রাখা উচিত।
    • সুডোকোড কি করেঃ একটা সুডোকোড দেওয়া থাকবে। সেটা থেকে প্রশ্ন হবে। যেমনঃ কোন একটা লুপ কয়বার চলতে পারে অথবা কোন একটা কোডের আউটপুট কি হতে পারে।
    • সুডোকোড লিখতে দেওয়াঃ কোন একটা সমস্যা সমাধানের সুডোকোড লিখতে হবে। যে কোডটা লিখতে হয় সেটা খুব বড় হবে না।

প্রোগ্রামিং অংশে ভালো করতে হলে বেশ অনুশীলন করতে হবে। লাইটওজের Beginner’s Problem ক্যাটাগরির প্রবলেমগুলো (এখানে দেখ – দেখতে হলে অ্যাকাউন্ট খোলা লাগবে) করলেই হবে।

ভালো করবার উপায় তো বাতলে দিলাম। তো! লেগে পড়ো অনুশীলনে। দেখা হবে প্রতিযোগিতায়!

লিংকঃ গতবারের প্রশ্ন


মীর ওয়াসি আহমেদ

মীর ওয়াসি আহমেদ ২০১১ এর ACM ICPC ঢাকা রিজিওনালের চ্যাম্পিয়ন এবং ২০১২ এর ওয়ার্ল্ড ফাইনালিস্ট। পড়াশুনা করেছেন বুয়েটে সিভিল ইঞ্জিনিয়ারিং এ। বর্তমানে সফ্টওয়্যার ইঞ্জিনিয়ার হিসেবে কাজ করছেন গুগলে।