আমাদেরকে Arr1[] এবং একই বা ভিন্ন দৈর্ঘ্যের আরেকটি Arr2[] সংখ্যার অ্যারে দেওয়া হয়েছে। Arr1[]-এর উপাদানগুলি আরোহী ক্রমে সাজানো হয়েছে, যেমন একটি একক উপাদানকে সাজানো হয়নি। আমাদের অবশ্যই দ্বিতীয় অ্যারে Arr2[] থেকে উপাদানটি খুঁজে বের করতে হবে যাতে এটি Arr1[] এর ভুলভাবে স্থাপন করা উপাদানটিকে প্রতিস্থাপন করতে পারে এবং এটিকে সাজাতে পারে। এছাড়াও, একাধিক বিকল্প উপলব্ধ থাকলে Arr2[]থেকে নির্বাচিত উপাদানটি সর্বাধিক হওয়া উচিত।
ইনপুট
Arr1[]={ 1,3,5,7,2,11 }, Arr2[]={ 4,8,7,10,9 }
আউটপুট
সর্বাধিক উপাদান যা Arr1 সাজাতে পারে:10
ব্যাখ্যা − Arr2[]-এ যে সংখ্যাগুলি Arr1[] সাজাতে পারে − 8,9,10 হিসাবে সেগুলি হল>=7 এবং <=11। এর মধ্যে ১০টি সর্বোচ্চ।
নতুন Arr1[] হয়ে যায় {1,3,5,7,10,11 } এবং সাজানো হয়।
ইনপুট
Arr1[]={ 12,5,22,17 }, Arr2[]={ 4,8,7,10,9 }
আউটপুট
এমন কোন উপাদান নেই।
ব্যাখ্যা − Arr2[]-এ কোন সংখ্যা নেই যা>=12 এবং <=22।
Arr1[] সাজানো যাবে না।
নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি
-
অ্যারে arr1[] এবং arr2[] সংখ্যা সংরক্ষণ করতে ব্যবহৃত হয়। Arr1[] একটি উপাদান ব্যতীত আরোহী ক্রমে সাজানো হয়।
-
ফাংশন sortMax( int arr1[], int arr2[], int n1, int n2 ) উভয় অ্যারে নেয় এবং তাদের দৈর্ঘ্য এবং আপডেট arr1[] যদি arr2[]-এ উপাদানটি সর্বাধিক পাওয়া যায় এবং arr-এ ভুল উপাদান প্রতিস্থাপন করতে পারে[]
-
ভেরিয়েবল wpos-এ arr1[] এ ভুল স্থাপন করা উপাদানের সূচী সংরক্ষণ করুন, প্রাথমিকভাবে -1।
-
maxx ব্যবহার করা হয় arr2[]-এর উপাদানগুলির মধ্যে সর্বাধিক সঞ্চয় করতে যা arr1[]-এর ভুলভাবে স্থাপন করা উপাদানটিকে প্রতিস্থাপন করতে পারে এবং এটিকে সাজাতে পারে।
-
প্রথমে ট্র্যাভারে arr1[] এবং ভুল উপাদান খুঁজে বের করুন যেমন। যদি arr[i]
হিসাবে সংরক্ষণ করুন -
এখন travers arr2[] এবং arr1[wpos-1] andarr[wpos+1] এর মধ্যে স্থাপন করা যেতে পারে এমন উপাদানগুলি খুঁজুন। এছাড়াও যদি এমন একটি উপাদান বিদ্যমান থাকে তবে এটিকে maxx এ জাতীয় উপাদানের সাথে তুলনা করুন।
-
সর্বোচ্চ আপডেট করুন।
-
শেষ পর্যন্ত arr1[wpos] কে maxx দিয়ে প্রতিস্থাপন করুন।
-
যদি এই ধরনের একটি উপাদান পাওয়া যায় তাহলে maxx ফেরত দিন, অন্যথায় -1 ফেরত দিন।
-
যদি কোনো উপাদান পাওয়া না যায় তাহলে একটি বার্তা প্রদর্শন করুন৷
-
অন্যথায় প্রিন্ট সাজানো arr1[]।
উদাহরণ
নামস্থান std;int sortMax(int arr1[], int arr2[], int n1, int n2) // arr1 সাজানো{ int ব্যবহার করে অ্যারে সাজানোর জন্য C++ প্রোগ্রাম #includeআউটপুট
Arr1[] সাজানো:9Arr1[]:1 3 7 9 10Arr2[]:2 1 6 8 9 করতে সর্বোচ্চ arr2[]