810. Chalkboard XOR Game

网友投稿 721 2022-09-04

810. Chalkboard XOR Game

810. Chalkboard XOR Game

We are given non-negative integers nums[i] which are written on a chalkboard. Alice and Bob take turns erasing exactly one number from the chalkboard, with Alice starting first. If erasing a number causes the bitwise XOR of all the elements of the chalkboard to become 0, then that player loses. (Also, we’ll say the bitwise XOR of one element is that element itself, and the bitwise XOR of no elements is 0.)

Also, if any player starts their turn with the bitwise XOR of all the elements of the chalkboard equal to 0, then that player wins.

Return True if and only if Alice wins the game, assuming both players play optimally.

Example:Input: nums = [1, 1, 2]Output: falseExplanation: Alice has two choices: erase 1 or erase 2. If she erases 1, the nums array becomes [1, 2]. The bitwise XOR of all the elements of the chalkboard is 1 XOR 2 = 3. Now Bob can remove any element he wants, because Alice will be the one to erase the last element and she will lose. If Alice erases 2 first, now nums becomes [1, 1]. The bitwise XOR of all the elements of the chalkboard is 1 XOR 1 = 0.

Notes:

1 <= N <= 1000. 0 <= nums[i] <= 2^16.

class Solution { public boolean xorGame(int[] nums) { int x = 0; for (int v : nums) x ^= v; return x == 0 || nums.length % 2 == 0; }}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:804. Unique Morse Code Words
下一篇:【基础】开发中经常用到的4个四舍五入函数(四舍五入函数是什么意思)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~