- এই সমস্যা টা মিনি-ম্যাক্স টাইপের সমস্যা ।
- এই সমস্যা সমাধান করার জন্য প্রথমে আমাদের কে প্রত্যেক বিল্ডিং থেকে প্রত্যেক বিল্ডিং এ যাওয়ার মিনিমাম পাথ বের করতে হবে এই জন্য আমরা Floyd Warshall ব্যবহার করতে পারি ।
- এর পর আমাদের কে যে source ও destination দেয়া থাকবে ।
- আমরা প্রত্যেক বার source থেকে i হয়ে destination এ যেতে চেষ্টা করবে । যদি আমরা যতগুলি i ব্যবহার করে আমাদের লক্ষ্যে যেতে পারব তাদের মধ্যে যেটা ম্যাক্সিমাম সেটাই আমাদের কে প্রিন্ট করতে হবে ।
priority_queue ডিফল্ট ভাবে বড় ডাটা কে টপে নিয়ে আশে । আমরা যদি < অপারেটর ওভারলোড করি তবে আমাদের মাথায় রাখতে হবে যে STL priority_queue হল ম্যাক্স priority_queue যার অর্থ ম্যাক্স উপদান কে সবার প্রথমে নিয়ে আসবে । এটা কে min priority_queue এ নিয়ে আসতে হলে return a.age < b.age; এই লাইন কে , return a.age > b.age; এই লাইন দিয়ে পরিবর্তন করতে হবে । কোড : Output : 10 9 8 7 6 5 4 3 2 1 এখন আমরা যদি আউটপুট কে 1 2 3 4 5 6 7 8 9 10 দেখাতে চাই তবে ১২ নং লাইন পরিবর্তন করে লিখতে হবে return a.age > b.age; ধন্যবাদ :)
Comments
Post a Comment