fork download
  1. #include <iostream>
  2. #include <string>
  3. #include <map>
  4.  
  5. int main(){
  6. std::string names_str[7] = {"Alex", "Louis", "Alex", "Simon", "Matthew", "Carl", "Simon"};
  7. int names[7];
  8.  
  9. std::map<std::string, int> counter_map;
  10. int counter = 0;
  11.  
  12. for (int i = 0; i < 7; ++i)
  13. {
  14. auto ret = counter_map.insert(std::make_pair(names_str[i], counter));
  15. if (ret.second) ++counter;
  16. names[i] = ret.first->second;
  17. }
  18.  
  19. for (int i = 0; i < 7; ++i)
  20. std::cout << names[i] << ' ';
  21. return 0;
  22. }
Success #stdin #stdout 0s 15240KB
stdin
Standard input is empty
stdout
0 1 0 2 3 4 2