ধরুন আমাদের কাছে n উপাদানের একটি অ্যারে আছে, আমাদের অ্যারের দুটি অনুক্রম (তারা ভিন্ন হতে পারে বা ভিন্ন হতে পারে) বেছে নিয়ে সর্বাধিক যোগফল দেখাতে হবে যাতে বিট-এর যোগফল প্রথম অনুসৃতির সমস্ত উপাদানের বুদ্ধিমত্তা এবং অপারেশন এবং বিট-ওয়াইজ বা দ্বিতীয় পরবর্তী সমস্ত উপাদানগুলির ক্রিয়াকলাপ সর্বাধিক৷
সুতরাং, যদি ইনপুটটি A ={4, 6, 7, 2} এর মত হয়, তাহলে আউটপুট 14 হবে কারণ আমরা শুধুমাত্র 7 নির্বাচন করে সর্বাধিক AND মান পাচ্ছি এবং সবগুলি (4 | 6 | 7 | 2) =7. সুতরাং, ফলাফল হবে 7 + 7 =14।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
-
and_max :=সর্বোচ্চ arr
-
or_max :=0
-
আমি 0 থেকে arr এর আকারের মধ্যে, কর
-
or_max :=or_max OR arr[i]
-
-
ফেরত এবং_max + or_max
উদাহরণ
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
def get_max_sum(arr):and_max =max(arr) or_max =0 in range(len(arr)):or_max|=arr[i] রিটার্ন এবং_max + or_maxa =[4,6,7,2] মুদ্রণ(get_max_sum(a))
ইনপুট
<প্রে>[4,6,7,2]আউটপুট
14