#include <iostream>
#include <vector>

using namespace std;

#define ll long long

struct Node
{
	ll x1, y1, x2, y2;
	Node(ll i1, ll j1, ll i2, ll j2)
	{
		x1 = i1;
		y1 = j1;
		x2 = i2;
		y2 = j2;
	}
};

vector <Node> m;

int main()
{
	int n;
	cin >> n;
	ll o = 1;
	for (int i = 0; i < n; i++)
	{
		ll a, h;
		cin >> a >> h;
		m.push_back(Node(o, 1, o + a - 1, h));
		o += a;
	}
	ll x, y;
	cin >> x >> y;
	for (int i = 0; i < n; i++)
	{
		ll x1 = m[i].x1;
		ll y1 = m[i].y1;
		ll x2 = m[i].x2;
		ll y2 = m[i].y2;
		if (x1 <= x && x <= x2 && y1 <= y && y <= y2)
		{
			cout << i + 1 << endl;
			return 0;
		}
	}
	cout << -1 << endl;
}