题解 | #农场牛的标识III#
农场牛的标识III
https://www.nowcoder.com/practice/f8cf74a21aa4440595f007789ea6bd61
题目考察的知识点是:
位运算。
题目解答方法的文字分析:
对于那些被标记了三次的牛,它们每个标识的二进制表示都有 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; } }#题解#