এই সমস্যায়, আমাদের একটি তালিকা দেওয়া হয়েছে যা আইটেম এবং তাদের মান এবং একটি পূর্ণসংখ্যা k নিয়ে গঠিত। আমাদের কাজ হল নিম্ন মান সহ K আইটেমগুলি সন্ধান করা।
সমস্যা বর্ণনা: আমাদের তালিকা থেকে k আইটেমগুলি খুঁজে বের করতে হবে যার মান সর্বনিম্ন।
সমস্যাটি বোঝার জন্য একটি উদাহরণ নেওয়া যাক,
ইনপুট: আইটেম-মান ={ {আইটেম 1, 200}, {আইটেম2, 100}, {আইটেম3, 500}, {আইটেম4, 400}} কে =2
আউটপুট: আইটেম1 , আইটেম2
ব্যাখ্যা:
ন্যূনতম মানের দুটি উপাদান হল 200 সহ আইটেম 1 এবং 100 সহ আইটেম 2৷
সমাধান পদ্ধতি
লোভের সাথে ন্যূনতম মান সহ k আইটেমগুলি খুঁজে বের করে সমস্যার একটি সমাধান। আমরা প্রথমে আইটেম তালিকাকে মানের ক্রমবর্ধমান ক্রম অনুসারে সাজাব। এই সাজানো তালিকা থেকে আমরা k ন্যূনতম মূল্যের আইটেম পাব।
আমাদের সমাধানের কাজ চিত্রিত করার জন্য প্রোগ্রাম,
উদাহরণ
#includenamespace ব্যবহার করে std;bool compVal(pair A, pair B) { যদি (A.second ==B.second) A ফেরত দেয়। প্রথম <বি.প্রথম; ফেরত A.second > আইটেম; items.push_back(make_pair("item1", 350)); items.push_back(make_pair("item2", 150)); items.push_back(make_pair("item3", 500)); items.push_back(make_pair("item4", 100)); sort(items.begin(), items.end(), compVal); cout< আউটপুট
2টি আইটেম যার সর্বনিম্ন মানের আছে;