class Solution {
public:
int singleNumber(vector<int>& nums) {
int dig[32] = {0};
for(auto i : nums){
for(int j = 0; j < 32; j++) {
dig[j] += i&0x01;
i = i >> 1;
if(dig[j]%3==0) dig[j] = 0;
}
}
int res = 0;
for(int i = 0; i < 32; i++){
res += (dig[i]<<i);
}
return res;
}
};
Single Number II
最新推荐文章于 2022-07-02 13:41:47 发布
本文介绍了一种使用C++实现的方法,该方法能够在整数数组中找到仅出现一次的那个数,而其他的数都出现了三次。通过逐位统计所有数字的每一位上1出现的次数,并判断是否被3整除来确定最终结果。
412

被折叠的 条评论
为什么被折叠?



