模拟题
用实际的地面来模拟会 MLC
所以把输入数据存起来,逆序比较
AC代码
#include <iostream>
using namespace std;
const int MAXN = 10004;
int xmin[MAXN], ymin[MAXN], xmax[MAXN], ymax[MAXN];
int main()
{
int N;
cin >> N;
for (int n = 1; n <= N; ++n) {
cin >> xmin[n] >> ymin[n] >> xmax[n] >> ymax[n];
xmax[n] += xmin[n];
ymax[n] += ymin[n];
}
int x, y;
cin >> x >> y;
for (int n = N; n >= 1; --n) {
if (x >= xmin[n] && x <= xmax[n] && y >= ymin[n] && y <= ymax[n]) {
cout << n << endl;
return 0;
}
}
cout << -1 << endl;
return 0;
}
该代码实现了一个检查给定点是否位于一组矩形内的算法。程序读取N个矩形的左下角和右上角坐标,然后判断指定点(x, y)是否在任何一个矩形内。如果在,输出矩形编号;否则,输出-1。
1085

被折叠的 条评论
为什么被折叠?



