fork download
  1. #include <algorithm>
  2. #include <iostream>
  3. #include <vector>
  4.  
  5. typedef std::pair<int, int> CellCoordinates;
  6.  
  7. int main()
  8. {
  9. std::vector<CellCoordinates> cells;
  10.  
  11. for (int i = 0; i < 3; ++i) {
  12. for (int j = 0; j < 3; ++j) {
  13. cells.emplace_back(i, j);
  14. }
  15. }
  16.  
  17. for (int i = 0, size = cells.size(); i < 9; ++i, --size) {
  18. std::cout << "Cells left: " << size << std::endl;
  19.  
  20. int index = rand() % (size + 1);
  21. CellCoordinates cell = cells[index];
  22.  
  23. std::cout << cell.first << " "
  24. << cell.second << std::endl;
  25.  
  26. std::remove(cells.begin(), cells.end(), cell);
  27. }
  28.  
  29. return 0;
  30. }
Success #stdin #stdout 0s 3476KB
stdin
Standard input is empty
stdout
Cells left: 9
1 0
Cells left: 8
2 2
Cells left: 7
0 1
Cells left: 6
2 1
Cells left: 5
2 2
Cells left: 4
0 0
Cells left: 3
1 2
Cells left: 2
0 2
Cells left: 1
2 0