Re: [闲聊] 每日leetcode

楼主: oin1104 (是oin的说)   2025-01-16 16:01:18
※ 引述 《Meaverzt (单推凛宝)》 之铭言:
:  
: 题目:
:  
: 有两个阵列nums1跟nums2里面有很多数字
:  
: 我们要去做一个nums3里面是nums1跟nums2中所有xor后可能的值
:  
: 最后回传nums3每一项xor后的值
:  
: 思路:
:  
: 因为一个数字只要被xor两次就会变0
xor偶数次会变0
一个数字总共会经历的xor次数是另一个阵列的长度
: 所以去算每个数字被xor几次
也就是另一个阵列的长度
:  
: 只要是奇数就去跟答案xor
赞赞赞
```cpp
class Solution {
public:
int xorAllNums(vector<int>& nums1, vector<int>& nums2)
{
int n1 = nums1.size();
int n2 = nums2.size();
if( !(n1&1) && !(n2&1) )return 0;
int num1 = 0;
int num2 = 0;
if(n1 & 1) for(int k : nums2) num2 ^= k;
if(n2 & 1) for(int k : nums1) num1 ^= k;
return num1 ^ num2;
}
};```
楼主: oin1104 (是oin的说)   2025-01-16 16:02:00
我看了一下 其实就是思路2 姆咪

Links booklink

Contact Us: admin [ a t ] ucptt.com