#include <iostream>
#include <vector>
#include <set>
#include <map>
int countduplicate(const std::vector<int>& number) {
std::map<int, int> m;
int countDupes = 0;
for (std::vector<int>::const_iterator it = number.begin(); it != number.end(); ++it){
const int currentNumber = *it;
if(m.find(currentNumber) != m.end()){
if(m[currentNumber] == 1){
++countDupes;
++m[currentNumber];
}
}else{
m[currentNumber] = 1;
}
}
return countDupes;
}
int main() {
const std::vector<int> vect { 1,3,3,4,4,4,5,5,5 };
const int dupeCount = countduplicate(vect);
std::cout << dupeCount;
return 0;
}