fork(1) download
  1. #include <iostream>
  2. #include <vector>
  3. #include <iostream>
  4. using namespace std;
  5.  
  6. void middle_out(vector<int> v)
  7. {
  8. int mid = v.at(v.size()/2);
  9. int idx = (v.size()/2);
  10. int offset = 0;
  11. int sign = -1;
  12.  
  13. while(offset >= 0 && offset < v.size())
  14. {
  15. sign *= -1;
  16. idx += offset*sign;
  17. cout << v[idx] << " ";
  18. offset+=1;
  19. }
  20. cout << endl;
  21. }
  22.  
  23. int main(int argc, char const *argv[])
  24. {
  25. vector<int> v1 = {1,2,3,4,5};
  26. vector<int> v2 = {1,2,3,4,5,6};
  27. middle_out(v1);
  28. middle_out(v2);
  29.  
  30. return 0;
  31. }
Success #stdin #stdout 0s 5284KB
stdin
 
stdout
3 2 4 1 5 
4 3 5 2 6 1