ハッシュでいい。
別のにたとえると、例えば"国語"、"算数"、"理科"、"社会"という単語をカウントする問題と一緒だろ?
ハッシュ値でも実値でも、値が幅広いとアクセスに時間が掛かるかメモリ確保が食うから、上位何ビットをインデックスにすると決めて
(可変長の)2次元配列に格納するなどしたらいいんでは。
2次元目はstlのmapなどでも。vector(普通の配列)のほうがアクセス速いかも?