[C++]萌新求助!
查看原帖
[C++]萌新求助!
723958
KyrionRan楼主2022/5/3 19:15

采用输入#1里的数据没问题
但是#2有问题
求助大佬啊啊啊啊啊

#include<iostream>
using namespace std;
struct carpet
{
	int bl_coord[2];	//地毯左下角坐标
	int size[2];	//地毯尺寸(x,y)
};
struct fourcoord
{
	int tl_coord[2];	//地毯左上角坐标
	int bl_coord[2];	//地毯左下角坐标
	int tr_coord[2];	//地毯右上角坐标
	int br_coord[2];	//地毯右下角坐标
};
int main()
{
	int set_coord[2];	//设定点
	int num_coord;	//地毯的数量
	cin >> num_coord;
	carpet car[10000];
	for (int i = 0; i < num_coord; i++)
	{
		for (int j = 0; j < 2; j++)
		{
			cin >> car[i].bl_coord[j];
			cin >> car[i].size[j];
		}
	}
	cin >> set_coord[0]>>set_coord[1];
	fourcoord coord[10000];
	for (int i = 0; i < num_coord; i++)
	{
		//x轴坐标
		coord[i].bl_coord[0] = car[i].bl_coord[0];
		coord[i].br_coord[0] = car[i].bl_coord[0] + car[i].size[0];
		coord[i].tr_coord[0] = car[i].bl_coord[0] + car[i].size[0];
		coord[i].tl_coord[0] = car[i].bl_coord[0];
		//y轴坐标
		coord[i].bl_coord[1] = car[i].bl_coord[1];
		coord[i].tl_coord[1] = car[i].bl_coord[1] + car[i].size[1];
		coord[i].tr_coord[1] = car[i].bl_coord[1] + car[i].size[1];
		coord[i].br_coord[1] = car[i].bl_coord[1];
	}
	int result;
	for (int i = num_coord; i > 0; --i)
	{
		if (coord[i].bl_coord[1] <= set_coord[1] <= coord[i].tl_coord[1] && coord[i].bl_coord[0] <= set_coord[0] <= coord[i].br_coord[0])
		{
			result = i + 1;
			break;
		}
		else
		{
			result = -1;
		}
	}
	cout << result << endl;
	return 0;
}
2022/5/3 19:15
加载中...