1 条题解

  • 0
    @ 2026-8-7 15:50:44

    不要用模拟,会炸

    #include <bits/stdc++.h>
    using namespace std;
    
    struct Carpet {
        int a, b, g, k;
    } c[10005];
    
    int main() {
        int n;
        cin >> n;
        for(int i = 1; i <= n; ++i) {
            cin >> c[i].a >> c[i].b >> c[i].g >> c[i].k;
        }
        int x, y;
        cin >> x >> y;
    
        int ans = -1;
        for(int i = n; i >= 1; --i) {
            int ax = c[i].a;
            int ay = c[i].b;
            int g = c[i].g;
            int k = c[i].k;
            
            if(x >= ax && x <= ax + g -1 && y >= ay && y <= ay + k -1) {
                ans = i;
                break;
            }
        }
        cout << ans << endl;
        return 0;
    }
    
    • 1

    信息

    ID
    5125
    时间
    1000ms
    内存
    125MiB
    难度
    3
    标签
    递交数
    17
    已通过
    4
    上传者