#include <iostream>
#include <vector>
int main(void) {
std::vector<int> v = {1, 10, 5, 8, 7, 6, 4, 3, 2, 9};
for (int i = 0; i < v.size(); i++) {
std::cout << v[i] << " ";
}
std::cout << std::endl;
for (int i = 0; i < v.size() - 1; i++) {
int min = v[i];
int min_index = i;
for (int j = i + 1; j < v.size(); j++) {
if (v[min_index] > v[j])
min_index = j;
}
if (i != min_index) {
int temp = v[i];
v[i] = v[min_index];
v[min_index] = temp;
}
std::cout << i + 1 << " Selection Sort : ";
for (int k = 0; k < v.size(); k++) {
std::cout << v[k] << " ";
}
std::cout << std::endl;
}
for (int i = 0; i < v.size(); i++) {
std::cout << v[i] << " ";
}
std::cout << std::endl;
}