কম্পিউটার টিউটোরিয়াল

সি++ প্রোগ্রাম: অ্যারেতে ন্যূনতম XOR ভ্যালু পেয়ার খুঁজে বের করা


সমস্যা বিবরণ

একটি ইন্টিজার অ্যারে দেওয়া আছে। অ্যারেতে এমন একটি পেয়ার খুঁজে বের করতে হবে যaların XOR ভ্যালু ন্যূনতম।

উদাহরণ

যদি arr[] = {10, 20, 30, 40} হয়,
তবে ন্যূনতম ভ্যালু পেয়ার হবে 20 এবং 30 কারণ (20 ^ 30) = 10।
(10 ^ 20) = 30
(10 ^ 30) = 20
(10 ^ 40) = 34
(20 ^ 30) = 10
(20 ^ 40) = 60
(30 ^ 40) = 54

অ্যালগরিদম

  • অ্যারের সব সম্ভাব্য পেয়ার জেনারেট করুন এবং তাদের XOR ভ্যালু ক্যালকুলেট করুন।
  • ন্যূনতম XOR ভ্যালু রিটার্ন করুন।

সি++ কোড উদাহরণ

#include <bits/stdc++.h>
using namespace std;

int getMinValue(int* arr, int n) {
    int minValue = INT_MAX;
    for (int i = 0; i < n; ++i) {
        for (int j = i + 1; j < n; ++j) {
            minValue = min(minValue, arr[i] ^ arr[j]);
        }
    }
    return minValue;
}

int main() {
    int arr[] = {10, 20, 30, 40};
    int n = sizeof(arr) / sizeof(arr[0]);
    cout << "Minimum value = " << getMinValue(arr, n) << endl;
    return 0;
}

আউটপুট

Minimum value = 10

  1. নির্দিষ্ট XOR মান বিশিষ্ট সাবসেট গণনা C++-এ

  2. C++-এ জব শিডিউলের ন্যূনতম কঠিনতা (Minimum Difficulty of a Job Schedule)

  3. C++-এ ম্যাক্স হিপ-এ ন্যূনতম এলিমেন্ট বের করা

  4. C++-এ nCr এর মান বের করার প্রোগ্রাম