珠海网站制作设计,成都医院网站建设,网站微信链接怎么做的,营销是什么意思1. 题目
给定一个正整数#xff0c;检查他是否为交替位二进制数#xff1a;换句话说#xff0c;就是他的二进制数相邻的两个位数永不相等。
输入: 5
输出: True
解释:
5的二进制数是: 101输入: 7
输出: False
解释:
7的二进制数是: 111输入: 11
输出: False
解释:
11的二进…1. 题目
给定一个正整数检查他是否为交替位二进制数换句话说就是他的二进制数相邻的两个位数永不相等。
输入: 5
输出: True
解释:
5的二进制数是: 101输入: 7
输出: False
解释:
7的二进制数是: 111输入: 11
输出: False
解释:
11的二进制数是: 1011输入: 10
输出: True
解释:
10的二进制数是: 10102. 解题
满足该特征的数右移一位与其自己异或^得到的全是11111然后上面结果1变成100000注意溢出然后11111和100000与 0
class Solution {
public:bool hasAlternatingBits(int n) {n n^(n1);return (((long)n1)n) 0;//最外层括号不能省}
};