2 条题解

  • 1
    @ 2026-7-13 17:59:19

    omg......实话说有一点多此一举,代码还可以简化,但我太懒了呵呵,用的除法qwq……

    #include <cmath>
    #include <iomanip>
    #include <cstring>
    #include <stdio.h>
    #include <queue>
    #include <algorithm>
    #include <string>
    #include <stack>
    using namespace std;
    const int N=1e5+10;
    long long m[N];
    int main()
    {
        int i;
        cin>>i;
        int fl=0;
        for(int k=1;k<=i;k++)
        {
            fl=0;
            cin>>m[k];
            if (m[k]<=0)
            {
                cout<<"NO"<<endl;
                fl=1;
                continue;
            }
            if(m[k]==1)
            {
                cout<<"YES"<<endl;
                continue;
            }
            if (m[k]%2 == 1)
            {
                cout<<"NO"<<endl;
                fl=1;
                continue;
            }
            while (m[k]>2)
            {
                m[k]/=2;
                if (m[k]%2 == 1)
                {
                    cout<<"NO"<<endl;
                    fl=1;
                    break;
                }
            }
            if(fl==0)
            {
                cout<<"YES"<<endl;
            }
        }
        return 0;
    }
    
    
    

    信息

    ID
    893
    时间
    100ms
    内存
    4MiB
    难度
    8
    标签
    递交数
    74
    已通过
    12
    上传者