标签:amp class span 奇葩 答案 转换 color div return
注意负数转换成补码计算
我的方法比较奇葩,把负数的补码用正数表示,结果加1就是答案,因为负数的符号位是1
class Solution { public: int NumberOf1(int n) { int tmp = n < 0 ? ((~(-n) + 1) & 0x7fffffff) : n, res = 0; while(tmp){ res += tmp & 1; tmp >>= 1; } return n >= 0 ? res : res + 1; } };
标签:amp class span 奇葩 答案 转换 color div return
原文地址:http://www.cnblogs.com/dupengcheng/p/7662436.html