반응형
https://leetcode.com/problems/minimum-number-of-operations-to-make-array-xor-equal-to-k
nums의 모든 수를 XOR 연산해줍니다.
그 결과와 k의 특정 비트가 다르다면, nums에서 아무 수의 해당 비트를 한 번 플립해주면 됩니다.
class Solution {
public:
int minOperations(vector<int>& nums, int k) {
int v = 0;
for(int num : nums) v ^= num;
int res = 0;
while(k || v) {
if(k % 2 != v % 2) res++;
k /= 2;
v /= 2;
}
return res;
}
};
반응형
'Algorithm' 카테고리의 다른 글
LeetCode 2441. Largest Positive Integer That Exists With Its Negative (0) | 2024.05.03 |
---|---|
LeetCode 2000. Reverse Prefix of Word (0) | 2024.05.01 |
LeetCode 752. Open the Lock (0) | 2024.04.29 |
LeetCode 310. Minimum Height Trees (0) | 2024.04.23 |
LeetCode 1971. Find if Path Exists in Graph (0) | 2024.04.21 |