fork download
  1. #include<iostream>
  2. #include<vector>
  3. #include<cstdlib>//abs()
  4.  
  5. int show_vector(std::vector<int> &vec){
  6. for(int i = 0; i < vec.size(); i++){
  7. if(i > 0) std::cout << ", ";
  8. std::cout << vec[i];
  9. }
  10. std::cout << std::endl;
  11. return 1;
  12. }
  13.  
  14. std::vector<int>* set_separator(std::vector<int>* value){
  15. const int separator = 9999;
  16. const int difference = 2;
  17.  
  18. std::vector<int>::iterator it = value->begin();
  19. int prev = *it;
  20. it++;
  21.  
  22. for(;it != value->end(); it++){
  23. if(abs(*it - prev) >= difference){
  24. value->insert(it, separator);
  25. it++;
  26. }
  27. prev = *it;
  28. }
  29.  
  30. return value;
  31. }
  32.  
  33. int main(void){
  34. std::vector<int> value;
  35.  
  36. value.push_back(1);
  37. value.push_back(4);
  38. value.push_back(7);
  39. value.push_back(8);
  40. value.push_back(11);
  41.  
  42. show_vector(value);
  43.  
  44. set_separator(&value);
  45.  
  46. show_vector(value);
  47.  
  48. return 0;
  49. }
  50.  
Success #stdin #stdout 0s 15240KB
stdin
Standard input is empty
stdout
1, 4, 7, 8, 11
1, 9999, 4, 9999, 7, 8, 9999, 11