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;
}