Re: [閒聊] 每日leetcode

作者: Meaverzt (Meaverzt)   2025-01-17 13:38:54
題目:
有一個裡面只會有0跟1的陣列derived
我們要檢查有沒有任何binary array經過運算後會變成derived
然後運算長這樣:
對每個index i in range(0,n-1)
i=n-1時derived[i]=original[i] xor original[0]
其他情況derived[i]=original[i] xor original[i+1]
思路:
假設original陣列存在的話
derived的每一項都可以寫成original的兩項xor
所以把derived的每一項xor的話
出來的值會等於original每一項被xor兩次就是0
所以只要檢查derived每一項xor是不是0
就知道original存不存在了
Code:
class Solotion {
public:
bool doesValidArrayExixt(vector<int>& derived){
int sum=0;
for (int x:derived)
sum^=x;
return sum==0;
}
};
bit運算還要幾天呢
作者: oin1104 (是oin的說)   2025-01-17 13:40:00
我快吐了 每天都在 ^=

Links booklink

Contact Us: admin [ a t ] ucptt.com