其他分享
首页 > 其他分享> > P1003 [NOIP2011 提高组] 铺地毯

P1003 [NOIP2011 提高组] 铺地毯

作者:互联网

// Problem: P1003 [NOIP2011 提高组] 铺地毯
// Contest: Luogu
// URL: https://www.luogu.com.cn/problem/P1003
// Memory Limit: 125 MB
// Time Limit: 1000 ms
// User: Pannnn

#include <bits/stdc++.h>

using namespace std;

struct Carpet {
    int a;
    int b;
    int g;
    int k;
};

/*
    初始思路:
    遍历地毯,把每个地毯的覆盖范围都修改为地毯编号,必定超时。
    
    只考虑目标点,判断每个地毯是否会覆盖在此点上,若覆盖,修改结果。
*/

int main() {
    int n;
    cin >> n;
    vector<Carpet> info(n + 1);
    
    for (int i = 1; i <= n; ++i) {
        cin >> info[i].a >> info[i].b >> info[i].g >> info[i].k;
    }
    int x, y;
    cin >> x >> y;
    int res = -1;
    for (int i = 1; i <= n; ++i) {
        if (x >= info[i].a && x <= info[i].a + info[i].g &&
            y >= info[i].b && y <= info[i].b + info[i].k) {
            res = i;
        }
    }
    cout << res << endl;
    return 0;
}

标签:info,NOIP2011,int,P1003,&&,地毯
来源: https://www.cnblogs.com/pannnn/p/15851097.html