XOR Operation in an Array
Given an integer n
and an integer start
.
Define an array nums
where nums[i] = start + 2*i
(0-indexed) and n == nums.length
.
Return the bitwise XOR of all elements of nums
.
Example 1:
Input: n = 5, start = 0 Output: 8 Explanation: Array nums is equal to [0, 2, 4, 6, 8] where (0 ^ 2 ^ 4 ^ 6 ^ 8) = 8. Where "^" corresponds to bitwise XOR operator.
Example 2:
Input: n = 4, start = 3 Output: 8 Explanation: Array nums is equal to [3, 5, 7, 9] where (3 ^ 5 ^ 7 ^ 9) = 8.
Example 3:
Input: n = 1, start = 7 Output: 7
Example 4:
Input: n = 10, start = 5 Output: 2
Constraints:
1 <= n <= 1000
0 <= start <= 1000
n == nums.length
class Solution {
public int xorOperation(int n, int start) {
int i = 1, result = 0;
while(i<=n){
result ^= start;
start+=2;
i++;
}
return result;
}
}
Here, we are going to solve using using XOR operator. In the problem, they clearly mentioned, that start increased by 2 and also we need to iterate till n numbers from start.
1) Initialize i as 1, result as 0.
2) Iterate i till n times, while iterating, each time increase start by 2, i by 1 and do XOR operation with result and again store it in result.
3) Finally return result.
Related Posts:
Click here for May month challenges with solution and explanation
Click here for April month challenges with solution and explanation
Click here for May month challenges with solution and explanation
Click here for April month challenges with solution and explanation
Click Follow button to receive updates from us instantly.
Please let us know about your views in comment section.
Comments
Post a Comment