HDU-5980
Find Small A
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 2268 Accepted Submission(s): 1083Problem DescriptionAs 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).
InputThe input contains a set of test data.The first number is one positive integer N (1≤N≤100),and then N positive integersai (1≤ ai≤2^32 - 1) follow
OutputOutput one line,including an integer representing the number of 'a' in the group of given numbers.
Sample Input3 97 24929 100
Sample Output3
关于二进制的理解应用问题,8位即2^8==256,则每个数%256若==97,则sum++
AC代码:
1 #include<bits/stdc++.h> 2 using namespace std; 3 4 int main(){ 5 ios::sync_with_stdio(false); 6 int t,x; 7 cin>>t; 8 int sum=0; 9 while(t--){ 10 cin>>x; 11 while(x>0){ 12 if(x%256==97){ 13 sum++; 14 } 15 x/=256; 16 } 17 } 18 cout<<sum<<endl; 19 return 0; 20 }