AI丁真会梦到电子烟吗?

#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main(){
    int n; 
    cin >> n; 
    vector<vector<int>> node(n, vector<int>(2, 0));
    for(int i = 0; i < n; ++i){
        for(int j = 0; j < 2; ++j){
            cin >> node[i][j];
        }
    }
    sort(node.begin(), node.end(), [](vector<int> &a, vector<int> &b){return a[0] < b[0];});
    vector<int> pos(n, 0);
    int tmp = n - 1;
    pos[n - 1] = tmp;
    for(int i = n - 2; i >= 0; --i){
        if(node[tmp][1] <= node[i][1]){
            tmp = i;
        }
        pos[i] = tmp;
    }
    for(int i = 0; i < n; ++i){
        if(i == pos[i]){
            cout << node[i][0] << ' ' << node[i][1] << endl;
        }
    }
    return 0;
}