Luogu P1003 铺地毯

发布时间 2023-05-29 18:45:37作者: Gery_8002

题目描述

link

思路

我们考虑倒序, 判断每块地毯是否覆盖所求坐标, 输出即可. 若未覆盖, 输出 \(-1\) 即可

Code

#include <cstdio>

const int N = 1e4 + 10;

int n, x, y, a[N], b[N], g[N], k[N];

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