给定一个数组arr和一个数字K ,找到一个新数组,该数组是通过对给定数组K中给定数组执行相应元素的XOR运算而形成的。
例子:
Input: arr[] = { 2, 4, 1, 3, 5 }, K = 5
Output: 7 1 4 6 0
Explanation:
2 XOR 5 = 7
4 XOR 5 = 1
1 XOR 5 = 4
3 XOR 5 = 6
5 XOR 5 = 0
Input: arr[] = { 4, 75, 45, 42 }, K = 2
Output: 6 73 47 40
方法:
- 遍历给定的数组。
- 然后,计算每个元素与K的XOR。
- 然后将其存储为输出数组中该索引处的元素。
- 打印更新的数组。
下面是上述方法的实现。
CPP
// C++ program to find XOR of every element
// of an array with a given number K
#include
using namespace std;
// Function to construct new array
void constructXORArray(int A[], int n, int K)
{
int B[n];
// Traverse the array and
// compute XOR with K
for (int i = 0; i < n; i++)
B[i] = A[i] ^ K;
// Print new array
for (int i = 0; i < n; i++)
cout << B[i] << " ";
cout << endl;
}
// Driver code
int main()
{
int A[] = { 2, 4, 1, 3, 5 };
int K = 5;
int n = sizeof(A) / sizeof(A[0]);
constructXORArray(A, n, K);
int B[] = { 4, 75, 45, 42 };
K = 2;
n = sizeof(B) / sizeof(B[0]);
constructXORArray(B, n, K);
return 0;
}
Java
// Java program to find XOR of every element
// of an array with a given number K
import java.util.*;
class GFG
{
// Function to construct new array
static void constructXORArray(int A[], int n, int K)
{
int[] B = new int[n];
// Traverse the array and
// compute XOR with K
for (int i = 0; i < n; i++)
B[i] = A[i] ^ K;
// Print new array
for (int i = 0; i < n; i++)
System.out.print( B[i] +" ");
System.out.println();
}
// Driver code
public static void main(String args[])
{
int A[] = { 2, 4, 1, 3, 5 };
int K = 5;
int n = A.length;
constructXORArray(A, n, K);
int B[] = { 4, 75, 45, 42 };
K = 2;
n = B.length;
constructXORArray(B, n, K);
}
}
// This code is contributed by shivanisinghss2110
Python3
# Python program to find XOR of every element
# of an array with a given number K
# Function to construct new array
def constructXORArray(A, n, K):
B = [0]*n;
# Traverse the array and
# compute XOR with K
for i in range(n):
B[i] = A[i] ^ K;
# Print new array
for i in range(n):
print(B[i], end=" ");
print();
# Driver code
if __name__ == '__main__':
A = [ 2, 4, 1, 3, 5 ];
K = 5;
n = len(A);
constructXORArray(A, n, K);
B = [ 4, 75, 45, 42 ];
K = 2;
n = len(B);
constructXORArray(B, n, K);
# This code contributed by sapnasingh4991
C#
// C# program to find XOR of every element
// of an array with a given number K
using System;
class GFG
{
// Function to construct new array
static void constructXORArray(int []A, int n, int K)
{
int[] B = new int[n];
// Traverse the array and
// compute XOR with K
for (int i = 0; i < n; i++)
B[i] = A[i] ^ K;
// Print new array
for (int i = 0; i < n; i++)
Console.Write( B[i] +" ");
Console.WriteLine();
}
// Driver code
public static void Main(String []args)
{
int []A = { 2, 4, 1, 3, 5 };
int K = 5;
int n = A.Length;
constructXORArray(A, n, K);
int []B = { 4, 75, 45, 42 };
K = 2;
n = B.Length;
constructXORArray(B, n, K);
}
}
// This code is contributed by Rajput-Ji
Javascript
输出:
7 1 4 6 0
6 73 47 40