2016 ACM/ICPC大连区域赛 J—Find Small A【二进制】

题意:

给你n个十进制数,问里面一共有几个a,题意很模糊,我是根据样例猜的题意

就是先将十进制数转换成32位的二进制数,如果不够就凑0,每8位对比是否等于97,即10100001

分析:

理解题意就好做了,水题

代码:

#include<bits/stdc++.h>
using namespace std;
long long ans;
int main()
{
    ans=1<<8;
    long long k;
    int n;
    int num=0;
    scanf("%d",&n);
    for(int i=0;i<n;i++)
    {
        scanf("%lld",&k);
        while(k)
        {
            //printf("sdf %lld\n",k%ans);
            if(k%ans==97)num++;
            k>>=8;
        }
    }
    printf("%d\n",num);
}

猜你喜欢

转载自blog.csdn.net/lml11111/article/details/82933438
今日推荐