#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<int, int> ii;
const int INF = 1e9;
const ll LINF = 1e18;
// - Đây là một bài vừa đọc vào sẽ thấy đơn giản nhưng ẩn chứa 1 cái bẫy bên trong
// - Với mỗi đoạn thì ngoài thêm l(i), r(i) vào danh sách nén ra thì ta còn phải thêm cả r(i) + 1
// - Một test đơn giản để thấy bẫy: [1, 3], [6, 7], [3, 6]
// Kết quả đúng là -1 (không có đoạn thoả mãn), nhưng nếu không thêm r(i) + 1 vào danh sách nén thì đoạn [3, 6] lại thoả mãn
// Lý do là vì nếu không thêm r(i) + 1 thì khoảng trống giữa đoạn [1, 3] và [6, 7] sẽ không còn!
// - Ngoài cái bẫy trên ra thì phần còn lại của bài rất đơn giản.
const int N = 2e5 + 5;
int n;
int l[N], r[N];
int cnt[3 * N];
int sz;
vector<int> vals;
int getVal(int x) {
return lower_bound(vals.begin(), vals.end(), x) - vals.begin() + 1;
}
int main() {
ios::sync_with_stdio(0); cin.tie(0);
cin >> n;
for (int i = 1; i <= n; i++) {
cin >> l[i] >> r[i];
vals.push_back(l[i]);
vals.push_back(r[i]);
vals.push_back(r[i] + 1); // important
}
sort(vals.begin(), vals.end());
vals.resize(unique(vals.begin(), vals.end()) - vals.begin());
sz = vals.size();
for (int i = 1; i <= n; i++) {
cnt[getVal(l[i])]++;
cnt[getVal(r[i] + 1)]--;
}
for (int i = 1; i <= sz; i++) cnt[i] += cnt[i - 1];
// Lúc này cnt[i] chính là số đoạn phủ điểm i
for (int i = 1; i <= sz; i++) cnt[i] = (cnt[i] == 1);
for (int i = 1; i <= sz; i++) cnt[i] += cnt[i - 1];
// Lúc này cnt[i] chính là số điểm từ 1 đến i mà chỉ có 1 đoạn phủ nó
int ans = -1;
for (int i = 1; i <= n; i++) {
if (cnt[getVal(r[i])] - cnt[getVal(l[i]) - 1] == 0) ans = i;
}
cout << ans << '\n';
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+IAp1c2luZyBuYW1lc3BhY2Ugc3RkOyAgCgp0eXBlZGVmIGxvbmcgbG9uZyBsbDsgIAp0eXBlZGVmIHBhaXI8aW50LCBpbnQ+IGlpOyAgCgpjb25zdCBpbnQgSU5GID0gMWU5OyAgCmNvbnN0IGxsIExJTkYgPSAxZTE4OyAgCgovLyAtIMSQw6J5IGzDoCBt4buZdCBiw6BpIHbhu6thIMSR4buNYyB2w6BvIHPhur0gdGjhuqV5IMSRxqFuIGdp4bqjbiBuaMawbmcg4bqpbiBjaOG7qWEgMSBjw6FpIGLhuqt5IGLDqm4gdHJvbmcKLy8gLSBW4bubaSBt4buXaSDEkW/huqFuIHRow6wgbmdvw6BpIHRow6ptIGwoaSksIHIoaSkgdsOgbyBkYW5oIHPDoWNoIG7DqW4gcmEgdGjDrCB0YSBjw7JuIHBo4bqjaSB0aMOqbSBj4bqjIHIoaSkgKyAxCi8vIC0gTeG7mXQgdGVzdCDEkcahbiBnaeG6o24gxJHhu4MgdGjhuqV5IGLhuqt5OiBbMSwgM10sIFs2LCA3XSwgWzMsIDZdCi8vICAgS+G6v3QgcXXhuqMgxJHDum5nIGzDoCAtMSAoa2jDtG5nIGPDsyDEkW/huqFuIHRob+G6oyBtw6NuKSwgbmjGsG5nIG7hur91IGtow7RuZyB0aMOqbSByKGkpICsgMSB2w6BvIGRhbmggc8OhY2ggbsOpbiB0aMOsIMSRb+G6oW4gWzMsIDZdIGzhuqFpIHRob+G6oyBtw6NuIAovLyAgIEzDvSBkbyBsw6AgdsOsIG7hur91IGtow7RuZyB0aMOqbSByKGkpICsgMSB0aMOsIGtob+G6o25nIHRy4buRbmcgZ2nhu69hIMSRb+G6oW4gWzEsIDNdIHbDoCBbNiwgN10gc+G6vSBraMO0bmcgY8OybiEKLy8gLSBOZ2/DoGkgY8OhaSBi4bqreSB0csOqbiByYSB0aMOsIHBo4bqnbiBjw7JuIGzhuqFpIGPhu6dhIGLDoGkgcuG6pXQgxJHGoW4gZ2nhuqNuLgpjb25zdCBpbnQgTiA9IDJlNSArIDU7IAoKaW50IG47ICAKaW50IGxbTl0sIHJbTl07IAppbnQgY250WzMgKiBOXTsgCgppbnQgc3o7ICAKdmVjdG9yPGludD4gdmFsczsgCgppbnQgZ2V0VmFsKGludCB4KSB7CglyZXR1cm4gbG93ZXJfYm91bmQodmFscy5iZWdpbigpLCB2YWxzLmVuZCgpLCB4KSAtIHZhbHMuYmVnaW4oKSArIDE7ICAKfQoKaW50IG1haW4oKSB7Cglpb3M6OnN5bmNfd2l0aF9zdGRpbygwKTsgY2luLnRpZSgwKTsgIAkKCWNpbiA+PiBuOyAKCWZvciAoaW50IGkgPSAxOyBpIDw9IG47IGkrKykgewoJCWNpbiA+PiBsW2ldID4+IHJbaV07IAoJCXZhbHMucHVzaF9iYWNrKGxbaV0pOyAKCQl2YWxzLnB1c2hfYmFjayhyW2ldKTsKCQl2YWxzLnB1c2hfYmFjayhyW2ldICsgMSk7IC8vIGltcG9ydGFudAoJfQoKCXNvcnQodmFscy5iZWdpbigpLCB2YWxzLmVuZCgpKTsKCXZhbHMucmVzaXplKHVuaXF1ZSh2YWxzLmJlZ2luKCksIHZhbHMuZW5kKCkpIC0gdmFscy5iZWdpbigpKTsgICAKCXN6ID0gdmFscy5zaXplKCk7ICAKCglmb3IgKGludCBpID0gMTsgaSA8PSBuOyBpKyspIHsKCQljbnRbZ2V0VmFsKGxbaV0pXSsrOyAKCQljbnRbZ2V0VmFsKHJbaV0gKyAxKV0tLTsgCgl9Cglmb3IgKGludCBpID0gMTsgaSA8PSBzejsgaSsrKSBjbnRbaV0gKz0gY250W2kgLSAxXTsgCgkvLyBMw7pjIG7DoHkgY250W2ldIGNow61uaCBsw6Agc+G7kSDEkW/huqFuIHBo4bunIMSRaeG7g20gaSAKCQoJZm9yIChpbnQgaSA9IDE7IGkgPD0gc3o7IGkrKykgY250W2ldID0gKGNudFtpXSA9PSAxKTsgCglmb3IgKGludCBpID0gMTsgaSA8PSBzejsgaSsrKSBjbnRbaV0gKz0gY250W2kgLSAxXTsgCgkvLyBMw7pjIG7DoHkgY250W2ldIGNow61uaCBsw6Agc+G7kSDEkWnhu4NtIHThu6sgMSDEkeG6v24gaSBtw6AgY2jhu4kgY8OzIDEgxJFv4bqhbiBwaOG7pyBuw7MKCQoJaW50IGFucyA9IC0xOyAgCglmb3IgKGludCBpID0gMTsgaSA8PSBuOyBpKyspIHsKCQlpZiAoY250W2dldFZhbChyW2ldKV0gLSBjbnRbZ2V0VmFsKGxbaV0pIC0gMV0gPT0gMCkgYW5zID0gaTsgIAoJfQoJCgljb3V0IDw8IGFucyA8PCAnXG4nOyAKfQ==