সমস্যা বিবৃতি
পূর্ণসংখ্যার একটি অ্যারে দেওয়া, কাজটি হল অ্যারের প্রতিটি উপসেটের সমস্ত উপাদানের AND খুঁজে বের করা এবং সেগুলির মধ্যে সর্বনিম্ন AND মান প্রিন্ট করা৷
উদাহরণ
If arr[] = {1, 2, 3, 4, 5} then
(1 & 2) = 0
(1 & 3) = 1
(1 & 4) = 0
(1 & 5) = 1
(2 & 3) = 2
(2 & 4) = 0
(2 & 5) = 0
(3 & 4) = 0
(3 & 5) = 1
(4 & 5) = 4 অ্যালগরিদম
- অ্যারের যেকোনো উপসেটের সর্বনিম্ন AND মান হবে অ্যারের সমস্ত উপাদানের AND।
- সুতরাং, সবচেয়ে সহজ উপায় হল সাবয়ারের সমস্ত উপাদানের AND খুঁজে বের করা।
উদাহরণ
#include <bits/stdc++.h>
using namespace std;
int getMinAndValue(int *arr, int n) {
int result = arr[0];
for (int i = 1; i < n; ++i) {
result = result & arr[i];
}
return result;
}
int main() {
int arr[] = {1, 2, 3, 4, 5};
int n = sizeof(arr) / sizeof(arr[0]);
cout << "Minimum value = " << getMinAndValue(arr, n) << endl;
return 0;
} আপনি যখন উপরের প্রোগ্রামটি কম্পাইল এবং এক্সিকিউট করবেন। এটি নিম্নলিখিত আউটপুট −
তৈরি করেআউটপুট
Minimum value = 0