#include <algorithm>
#include <functional>
#include <iostream>
#include <vector>

struct Reading {
    int id;
    int value;
};

int main() {
    std::vector<Reading> readings{{101, 3}, {202, 1}, {303, 2}};
    const auto key = [](const Reading& reading) { return reading.value; };
    std::ranges::sort(readings, std::less<int>{}, key);
    for (const auto& reading : readings) {
        std::cout << reading.id << ' ' << reading.value << '\n';
    }
    return 0;
}
