站外题
  • 板块灌水区
  • 楼主封禁用户
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/4/20 16:27
  • 上次更新2024/4/20 16:43:41
查看原帖
站外题
1295142
封禁用户楼主2024/4/20 16:27

输入一个正整数n ,判断该数转化为二进制后是否有1相邻,如有输出yes,否则输出no

输入格式 第一行一个数T,表示测试组数

接下来T行,每行一个正整数n

输出格式 n行

输入/输出例子1 输入:

2

10

12

输出:

no

yes

样例解释 T≤100

N < 2^62

#include<bits/stdc++.h>
using namespace std;
int main(){
    
    int n,m,flag=0;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
    
    cin>>m;
    for(int i=1;i<=64;i++)
    {
        if(m>>(i-1)&(m>>i)){
        flag=1;
        cout<<"yes\n";
        break;}
        if(m>>(i+1)&(m>>i))
        {
            flag=1;
            cout<<"yes\n";
            break;
        }
        else
        {
            flag=1;
            cout<<"no\n";
            break;
        }
    }
    ;
}
    return 0;
}
2024/4/20 16:27
加载中...