存数据只要存x轴和y轴的数据就可以,因为查询时只用到x和y两个数字,只需判断范围就可以 存一整个图会超内存 按顺序从最后存的一张地毯往前查


using namespace std;

int a[100010][4];

int main()
{
    int n,x,y;
    scanf("%d",&n);
    
    for (int i=0;i<n;i++) scanf("%d %d %d %d",&a[i][0],&a[i][1],&a[i][2],&a[i][3]);
    
    scanf("%d %d",&x,&y);
    for (int i=10010;i>=0;i--) {
        if (x>=a[i][0]&&x<=a[i][0]+a[i][2]&&y>=a[i][1]&&y<=a[i][1]+a[i][3]) {
            printf("%d",i+1);
            return 0;
        }
    }
    
    printf("-1");
    return 0;
}