int n; int x[M], y[M]; vector<int>vx, vy; void init() { sort(vx.begin(), vx.end()); sort(vy.begin(), vy.end()); vx.erase(unique(vx.begin(), vx.end()), vx.end()); vy.erase(unique(vy.begin(), vy.end()), vy.end()); for (int i = 1; i <= n; i++) { x[i] = lower_bound(vx.begin(), vx.end(), x[i]) - vx.begin(); y[i] = lower_bound(vy.begin(), vy.end(), y[i]) - vy.begin(); } } int main() { ios::sync_with_stdio(false); cin >> n; for (int i = 1; i <= n; i++) { cin >> x[i] >> y[i]; vx.push_back(x[i]); vy.push_back(y[i]); } init(); return 0; }