#include <iostream>
#include <array>
template <typename T, size_t SIZE>
void minSortLoop(std::array<T, SIZE>& a){
for(size_t o = 0; o < SIZE; o++) {
size_t minIx = 0;
for(size_t i = o + 1; i < SIZE; i++) {
if(a[i] < a[minIx]) {
minIx = i;
}
}
std::swap(a[o], a[minIx]);
}
}
int main()
{
std::array<int, 3> arr = {3,1,-9};
minSortLoop(arr);
for (auto e : arr) {
std::cout << " " << e << std::endl;
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8YXJyYXk+Cgp0ZW1wbGF0ZSA8dHlwZW5hbWUgVCwgc2l6ZV90IFNJWkU+CnZvaWQgbWluU29ydExvb3Aoc3RkOjphcnJheTxULCBTSVpFPiYgYSl7CiAgICBmb3Ioc2l6ZV90IG8gPSAwOyBvIDwgU0laRTsgbysrKSB7CiAgICAgICAgc2l6ZV90IG1pbkl4ID0gMDsKICAgICAgICBmb3Ioc2l6ZV90IGkgPSBvICsgMTsgaSA8IFNJWkU7IGkrKykgewogICAgICAgICAgICBpZihhW2ldIDwgYVttaW5JeF0pIHsKICAgICAgICAgICAgICAgIG1pbkl4ID0gaTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBzdGQ6OnN3YXAoYVtvXSwgYVttaW5JeF0pOwogICAgfQp9CgppbnQgbWFpbigpCnsKICAgIHN0ZDo6YXJyYXk8aW50LCAzPiBhcnIgPSB7MywxLC05fTsKICAgIG1pblNvcnRMb29wKGFycik7CiAKICAgIGZvciAoYXV0byBlIDogYXJyKSB7CiAgICAgICAgc3RkOjpjb3V0IDw8ICIgIiA8PCBlIDw8IHN0ZDo6ZW5kbDsKICAgIH0KfQo=