Problem Description here এই প্রব্লেমটি আমার তৈরী করা একটি প্রব্লেম যেটি মূলত Intra CoU Programming Contest 2020 এর জন্য সেট করা। এই প্রব্লেম সলভ করতে যা যা জানা দরকার তা হলোঃ Sparse Table , Segment Tree , DFS , Binary Search প্রব্লেমঃ প্রব্লেমটিতে বলা হয়েছে n সাইজের একটি ট্রি দেয়া থাকবে যার প্রতি নোডে কিছু ফুল আছে। এখন, তোমাকে q টা কুয়েরী এন্সার করতে হবে। কুয়েরী আবার দুই ধরণের হতে পারে। ১) u v x v থেকে u এর দিকে সর্বনিম্ন কয়টা নোড ভিজিট করে কমপক্ষে x সংখ্যক ফুল কালেক্ট করা যায় তা বের করতে হবে যেখানে u হচ্ছে v এর এন্সেস্টর(পূর্বসুরী) । ২) u y u নোডের ফুল সংখ্যা আপডেট করতে হবে। y পজিটিভ হলে যোগ হবে, নেগেটিভ হলে বিয়োগ। হিন্টসঃ ১) স্পার্স টেবিল ডাটা স্ট্রাকচার শিখে থাকলে এখন তুমি একটি ট্রি এর প্রতিটি নোডের জন্য এর kth প্যারেন্ট বের করতে পারবে নিশ্চয়ই! এর জন্য তোমার log(n) কমপ্লেক্সিটি লাগবে। ২) প্রব্লেমে একটা ব্যাপার লক্ষ্য করেছো কি?...
সমস্যাঃ n(<=1e5) সাইজের একটি অ্যারে দেয়া থাকবে যেখানে a[i]<=1e5। ঐ অ্যারের যতগুলো পেয়ার সম্ভব তাদের GCD এর যোগফল বের করতে হবে। এই প্রব্লেমটি পূর্বে আলোচিত এই প্রব্লেম এর উপর পুরোপুরি নির্ভরশীল। আইডিয়াঃ আমি যদি 1 থেকে 10^5 পর্যন্ত প্রতিটি সংখ্যা x কয়টি পেয়ার এর GCD হওয়া সম্ভব সেটা রেফারেন্সের প্রব্লেম দ্বারা বের করতে পারি তাহলে প্রতিটি সংখ্যা x এর জন্য, sum += (x * number of pair those GCD equal to x)
See the problem description - Here প্রব্লেম বুঝে থাকলে প্রথমে ১ টি টেবিল দেখে নেয়া যাকঃ আমাদের কে একটি অ্যারে দেয়া আছে ara[] = {-3 , -2 , -1 , 1 , 2 , 3} টেবিলের ১ম সারি হলো মূল অ্যারে (উল্লেখ্য অ্যারের সাইজ ৬। মূল অ্যারে টা কে ২বার রিপিট করা হয়েছে সলুশন এর সুবিধার্থে) । ২য় সারি হলো মূল অ্যারের কিউমুলেটিভ সাম যা ০ সাইক্লিক শিফট এর জন্য কাজ করে। এই সারির ১ থেকে ৬ ইন্ডেক্স পর্যন্ত সাম অ্যারের ইলিমেন্ট গুলোর মধ্যে মিনিমাম টা ০ থেকে বড় হলে, ০ সাইক্লিক শিফট শর্ত মেনেছে এন্সার ১ বাড়ানো হবে। ৩য় সারি হলো ২য় ইলিমেন্ট থেকে বানানো কিউমুলেটিভ সাম। এই সারির ২ থেকে ৭ ইনডেক্স পর্যন্ত সাম অ্যারের ইলিমেন্ট গুলোর মধ্যে মিনিমাম টা ০ থেকে বড় হলে, ১ সাইক্লিক শিফট শর্ত মেনেছে। এন্সার ১ বাড়ানো হবে। (উল্লেখ্য এই সারিতে ১ নম্বর ইনডেক্স এর ঘর খালি রাখা হয়েছে)। এভাবে ৬ সাইজের একটা অ্যারের জন্য ০ থেকে ৫ পর্যন্ত সাইক্লিক শিফট বের করে কয়টা সাইক্লিক শিফট এর মিনিমাম ভ্যালু ০ থেকে বড় সেটাই এই প্রব্লেমে বের করতে বলা হয়েছে। এখন, এভাবে প্রত্যেক সাইক্লিক শিফট এর জন্য সাম জেনা...
Comments
Post a Comment