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

C++-এ বিটওয়াইজ OR ইভেন পেয়ার: জোড় ফলাফল والے যোড়া গণনা

একটি পূর্ণসংখ্যা অ্যারে দেওয়া আছে। বিটওয়াইজ OR অপারেশনের ফলাফল জোড় (even) হওয়া যোড়াগুলোর সংখ্যা গণনা করুন।

মূল লজিক

OR ফলাফল জোড় হলে দুটি সংখ্যাই জোড় হতে হবে (LSB 0)।

সুতরাং: উত্তর = C(জোড়_কাউন্ট, 2)

C++ বাস্তবায়ন


#include 
using namespace std;

int count_pair(int arr[], int size) {
    int even = 0;
    for (int i = 0; i < size; i++)
        if ((arr[i] & 1) == 0) even++;
    return even * (even - 1) / 2;
}

int main() {
    int arr[] = {2, 5, 1, 8, 9, 2, 7};
    int size = sizeof(arr) / sizeof(arr[0]);
    cout << "Even OR pairs: " << count_pair(arr, size);
    return 0;
}

উদাহরণ

অ্যারে: [2, 5, 1, 8, 9, 2, 7]

জোড় সংখ্যা: 2, 8, 2 (৩টি)

যোড়া: (2,8), (2,2), (8,2) = 3টি

নোট

আর্টিকেল ১৭৪ ও ১৭৬ একই সমস্যা।

  1. C++-এ বিটওয়াইজ AND ইভেন পেয়ার: জোড় ফলাফল वाले যোড়া গণনা

  2. C++-এ বিটওয়াইজ AND অড পেয়ার: বিজোড় ফলাফল वाले যোড়া গণনা

  3. সি++-এ জোড় ও বিজোড় যোগফল বালা অর্ডার্ড পেয়ার গণনা

  4. সি++-এ জোড় ও বিজোড় গুণফল বালা অর্ডার্ড পেয়ার গণনা