#include struct Mentai { int Price; int Hot; }; int main() { int n, m; int *bought; Mentai *member; Mentai *mentai; std::cin >> n; member = new Mentai[n]; for(int i = 0; i < n; i++) { std::cin >> member[i].Price >> member[i].Hot; } std::cin >> m; mentai = new Mentai[m]; bought = new int[m]; for(int i = 0; i < m; i++) { std::cin >> mentai[i].Price >> mentai[i].Hot; bought[i] = 0; } int max = 0; for(int i = 0; i < n; i++) { for(int j = 0; j < m; j++) { if((member[i].Price <= mentai[j].Price) && (member[i].Hot >= mentai[j].Hot)) { bought[j]++; if(bought[j] > max) { max = bought[j]; } } } } if(max == 0) { std::cout << "0" << std::endl; } else { for(int i = 0; i < m; i++) { if(bought[i] == max) std::cout << (i + 1) << std::endl; } } return 0; }