#include <iostream>
#include <vector>
#include <algorithm>
bool less_than(int a, int b) { return a <b;}
int main()
{
std::vector<std::vector<double>> vector1 = {{4,3,5,3},
{2,6,3,7},
{6,8,5,1},
{5,6,1,5}};
int i = 3;
std::sort(vector1.begin(),
vector1.end(),
[i] (const std::vector<double> &a, const std::vector<double> &b)
{
return less_than(a[i] , b[i]);
});
for (auto &r : vector1)
{
for (auto e : r)
std::cout << e << " ";
std::cout << std::endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8YWxnb3JpdGhtPgpib29sIGxlc3NfdGhhbihpbnQgYSwgaW50IGIpIHsgcmV0dXJuIGEgPGI7fQppbnQgbWFpbigpCnsKCXN0ZDo6dmVjdG9yPHN0ZDo6dmVjdG9yPGRvdWJsZT4+IHZlY3RvcjEgPSB7ezQsMyw1LDN9LCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgezIsNiwzLDd9LCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgezYsOCw1LDF9LCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgezUsNiwxLDV9fTsKICAgICAgICAKICAgICAgICBpbnQgaSA9IDM7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICBzdGQ6OnNvcnQodmVjdG9yMS5iZWdpbigpLAogICAgICAgICAgICAgIHZlY3RvcjEuZW5kKCksCiAgICAgICAgICAgICAgW2ldIChjb25zdCBzdGQ6OnZlY3Rvcjxkb3VibGU+ICZhLCBjb25zdCBzdGQ6OnZlY3Rvcjxkb3VibGU+ICZiKQogICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuIGxlc3NfdGhhbihhW2ldICwgYltpXSk7CiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgCiAgICBmb3IgKGF1dG8gJnIgOiB2ZWN0b3IxKQogICAgewogICAgCWZvciAoYXV0byBlIDogcikKICAgIAkJc3RkOjpjb3V0IDw8IGUgPDwgIiAiOwogICAgCXN0ZDo6Y291dCA8PCBzdGQ6OmVuZGw7CiAgICB9CiAgICAKCXJldHVybiAwOwp9