#include #include #include using namespace std; struct arc { vector y; vector x; }; #define FF(x, y, z) for(int x =y; x < z; x++) int main() { vector vec; int n; cin >> n; map rows; map cols; int max_id =0; FF(i, 0, n) { int x, y; cin >> x >> y; int row_id = rows[x]; int cols_id = cols[y]; if (row_id && cols_id) { max_id--; } else if (row_id || cols_id){} else { max_id++; } rows[x] = true; cols[y] = true; } cout << max_id -1 << endl; return 0; }