এই সমস্যায়, আমাদেরকে N উপাদানগুলির একটি অ্যারে দেওয়া হয়েছে। আমাদের কাজ হল অ্যারে থেকে সর্বোচ্চ অপসারণ খুঁজে বের করা যখন অপসারণের সময়>=অপেক্ষার সময়।
সুতরাং, এখানে আমরা অ্যারের উপাদানগুলি সরিয়ে ফেলব। অ্যারের উপাদানটির মান অপসারণের সময়কে নির্দেশ করে (অ্যারে থেকে উপাদানটি সরাতে সময় নেওয়া হয়)।
উপাদানটির একটি অপেক্ষার সময় রয়েছে যা এটি সরানো পর্যন্ত অপেক্ষা করতে হবে৷
উপাদানটি থেকে সরানো যেতে পারে শুধুমাত্র যদি অপসারণের সময় অপেক্ষা করার সময়ের চেয়ে বেশি হয়৷
আমরা অ্যারে থেকে সরানো যেতে পারে যে উপাদান সর্বোচ্চ সংখ্যা খুঁজে বের করতে হবে. অ্যারের উপাদানগুলির ক্রম প্রয়োজন অনুসারে পরিবর্তন করা যেতে পারে।
সমস্যাটি বোঝার জন্য একটি উদাহরণ নেওয়া যাক,
ইনপুট − অ্যারে ={12, 3, 11, 7, 5}
আউটপুট − 2
ব্যাখ্যা −
প্রথমত, আমরা অ্যারেটিকে ঊর্ধ্বক্রম −
-এ পুনর্বিন্যাস করবঅ্যারেটি হবে {3, 5, 7,11, 12}
এখন, আমরা একে একে উপাদানগুলি সরিয়ে দেব
3 সরানো হচ্ছে৷ − অপেক্ষার সময় হল 0 যা অপসারণের সময় থেকে কম (3)। অপসারণ সম্ভব।
5 সরানো হচ্ছে − অপেক্ষার সময় হল 3 যা অপসারণের সময় থেকে কম (5)। অপসারণ সম্ভব।
7 সরানো হচ্ছে − অপেক্ষার সময় হল 8 যা অপসারণের সময়ের চেয়ে বেশি (7)। অপসারণ সম্ভব নয়।
এই সমস্যাটি সমাধান করার জন্য, আমরা বাছাই করব এবং একে একে উপাদানগুলি সরিয়ে ফেলতে হবে৷
অ্যালগরিদম
<প্রে>ধাপ 1:অ্যারেটিকে ঊর্ধ্বক্রমানুসারে সাজান। ধাপ 2:অ্যারের প্রতিটি উপাদানের জন্য, করুন:ধাপ 3:অপেক্ষার সময় খুঁজুন (উপাদানের আগে সমস্ত উপাদান অপসারণের সময়ের যোগফল)। ধাপ 4:যদি (অপেক্ষা করা হচ্ছে) সময় <=অপসারণের সময় ) ধাপ 4.1:উপাদান সরান এবং অপসারণের সংখ্যা বাড়ান। ধাপ 5:অন্য:বিরতি। ধাপ 6:সরানো উপাদানগুলির সংখ্যা মুদ্রণ করুন।উদাহরণ
অ্যারে থেকে সর্বোচ্চ অপসারণের জন্য প্রোগ্রাম যখন অপসারণের সময়>=C++ এ অপেক্ষার সময়
#includeনেমস্পেস ব্যবহার করে std;int countRemovedElements(int arr[], int n){ sort(arr, arr + n); int removeCount =0; int waitTime =0; জন্য (int i =0; i =waitTime) { removeCount++; অপেক্ষার সময় +=arr[i]; } অন্য বিরতি; } return removeCount;}int main(){int arr[] ={12, 3, 11, 7, 5}; int n =sizeof(arr) / sizeof(arr[0]); cout<<"সর্বোচ্চ সংখ্যক উপাদান যা অ্যারে থেকে সরানো যেতে পারে তা হল "< আউটপুট
অ্যারে থেকে সরানো যেতে পারে এমন উপাদানগুলির সর্বাধিক সংখ্যা হল 2