#include using namespace std; #define REP(i,n) for(int i=0; i<(n); i++) #define REP2(i,x,n) for(int i=x; i<(n); i++) #define ALL(n) begin(n),end(n) struct cww{cww(){ios::sync_with_stdio(false);cin.tie(0);}}star; const long long INF = numeric_limits::max(); int main() { int N; cin >> N; vector> A; int a, b; REP( i, N ) { cin >> a >> b; A.emplace_back( make_pair( a, b ) ); } int M; cin >> M; vector> X; int x, y; REP( i, M ) { cin >> x >> y; X.emplace_back( make_pair( x, y ) ); } vector v( M ); REP( i, M ) { REP( j, N ) { if( X[ i ].first <= A[ j ].first && X[ i ].second >= A[ j ].second ) { ++v[ i ]; } } } if( !*max_element( ALL( v ) ) ) { cout << 0 << endl; return 0; } REP( i, M ) { if( v[ i ] == *max_element( ALL( v ) ) ) { cout << i + 1 << endl; } } return 0; }