fork download
  1. #include <cstdio>
  2.  
  3. void string_to_histogram( int histogram[], const char* str )
  4. {
  5. char* ptr = (char*)str;
  6. while( *ptr )
  7. histogram[ *ptr++ & 0x1F ]++;
  8. }
  9.  
  10. int main()
  11. {
  12. int histogram[ 'z' - 'a' + 2 ] = { 0 };
  13.  
  14. char msg[ 256 ];
  15.  
  16. string_to_histogram( histogram, std::fgets( msg, sizeof msg, stdin ) );
  17.  
  18. for ( int c = 'a'; c <= 'z'; ++c )
  19. printf( "%c : %d\n", c, histogram[ c & 0x1F ] );
  20.  
  21. return 0;
  22. }
  23.  
Success #stdin #stdout 0s 3464KB
stdin
Hello World
stdout
a : 0
b : 0
c : 0
d : 1
e : 1
f : 0
g : 0
h : 1
i : 0
j : 0
k : 0
l : 3
m : 0
n : 0
o : 2
p : 0
q : 0
r : 1
s : 0
t : 0
u : 0
v : 0
w : 1
x : 0
y : 0
z : 0