fork download
  1. #include <iostream>
  2. #include <vector>
  3. #include <algorithm>
  4. #include <numeric>
  5. using namespace std;
  6.  
  7. int main()
  8. {
  9. int n = 5;
  10. vector<int> v(n);
  11. iota(v.begin(), v.end(), 1);
  12.  
  13. int k = 2;
  14. vector<int> mask(v.size());
  15. fill_n(mask.begin(), k, 1);
  16.  
  17. do
  18. {
  19. for (int i = 0; i < mask.size(); ++i)
  20. {
  21. if (mask[i]) { cout << v[i] << " "; }
  22. }
  23. cout << "\n";
  24. }
  25. while(prev_permutation(mask.begin(), mask.end()));
  26. }
Success #stdin #stdout 0s 4372KB
stdin
Standard input is empty
stdout
1 2 
1 3 
1 4 
1 5 
2 3 
2 4 
2 5 
3 4 
3 5 
4 5