在 C++ 中计算四个数组中所有 XOR 等于‘x’的四元组


在本教程中,我们将讨论如何编写一个程序来查找四个数组中 XOR 等于 x 的四元组数量。

为此,我们将提供四个数组和一个值 x。我们的任务是计算所有 XOR 等于给定值 x 的四元组。

示例

 在线演示

#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;
}

输出

4

更新于: 2020 年 2 月 17 日

162 次浏览

开启您的 职业生涯

完成课程以取得认证

开始学习
广告