As is known to all,the ASCII of character 'a' is 97. Now,find out how many character 'a' in a group of given numbers. Please note that the numbers here are given by 32 bits’ integers in the computer.That means,1digit represents 4 characters(one character is represented by 8 bits’ binary digits).
3 97 24929 100
3
1.把数字从十进制转化成二进制的方法
2.每八位转换成一个数字的方法
#include <iostream> #include<cstdio> #include<cmath> #include<cstring> using namespace std; const double PI=3.1415926; int a[105]; int main() { int n; while(cin>>n) { int ans=0; while(n--) { memset(a,0,sizeof(a)); int tmp,z=0; scanf("%d",&tmp); while(tmp) { a[z++]=tmp&1; tmp/=2; } int k=z; for(int i=0;i<=k;i+=8) { int sum=0,mul=1; for(int j=i;j<i+8;j++) { sum+=a[j]*mul; mul*=2; } if(sum==97)ans++; } } cout<<ans<<endl; } return 0; }