Computer >> Máy Tính >  >> Lập trình >> C ++

Đếm tất cả các Bộ tứ từ bốn mảng sao cho XOR của chúng bằng ‘x’ trong C ++

Trong hướng dẫn này, chúng ta sẽ thảo luận về một chương trình để tìm số lượng các phần tư từ bốn mảng sao cho XOR của chúng bằng x.

Đối với điều này, chúng tôi sẽ được cung cấp với bốn mảng và một giá trị x. Nhiệm vụ của chúng ta là đếm tất cả các phần tư có XOR bằng giá trị x đã cho.

Ví dụ

#include<bits/stdc++.h>
using namespace std;
//counting quadruples with XOR equal to x
int count_quad(int a[], int b[], int c[], int d[],
int x, int n){
   int count = 0;
   for (int i = 0 ; i < n ; i++)
      for (int j = 0 ; j < n ; j++)
         for (int k = 0 ; k < n ; k++)
            for (int l = 0 ; l < n ; l++)
               if ((a[i] ^ b[j] ^ c[k] ^ d[l]) == x)
                  count++;
   return count;
}
int main(){
   int x = 3;
   int a[] = {0, 1};
   int b[] = {2, 0};
   int c[] = {0, 1};
   int d[] = {0, 1};
   int n = sizeof(a)/sizeof(a[0]);
   cout << count_quad(a, b, c, d, x, n) << endl;
   return 0;
}

Đầu ra

4