题目考察的知识点是:
位运算。
题目解答方法的文字分析:
对于那些被标记了三次的牛,它们每个标识的二进制表示都有 32 位,而每一位的 1 的个数如果也出现了三次,那么对 3 取余之后应该是 0 。我们还有那个只被标记了两次的牛,这个牛剩下的余数就是 1 啦。
本题解析所用的编程语言:
java语言。
完整且正确的编程代码:
import java.util.*;
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param nums int整型一维数组
* @return int整型
*/
public int twoCountNumber (int[] nums) {
// write code here
int ones = 0, twos = 0;
for (int num : nums) {
ones = (ones ^ num) & ~twos;
twos = (twos ^ num) & ~ones;
}
return twos;
}
}

京公网安备 11010502036488号