【洛谷】P1003 铺地毯 题解

【洛谷】P1003 铺地毯 题解_第1张图片
【洛谷】P1003 铺地毯 题解_第2张图片

  • 分成xy两次比较,只要x,y在区间内就行,然后依次遍历,我是使用的二维数组进行的,其中一维的参数就是地毯的编号减一。
#include
int main()
{
    long int n;
    long int a[10000][4];
    long int x,y;
    int num=0;
    scanf("%ld",&n);
    for (int i = 0; i < n;i++)
        scanf("%ld%ld%ld%ld",&a[i][0],&a[i][1],&a[i][2],&a[i][3]);
    scanf("%ld%ld",&x,&y);
    for (int i = 0; i < n; i++)
        if (x>=a[i][0]&&x<=a[i][2]+a[i][0]&&y>=a[i][1]&&y<=a[i][1]+a[i][3])
                num =i+1;
    if (num==0) printf("-1");
    else   printf("%ld",num);
    
    return 0;    
    

}

你可能感兴趣的:(洛谷)