洛谷P1003 鋪地毯 貪心模擬

題目鏈接:https://www.luogu.org/problem/P1003

簡單的貪心模擬

結構體存地毯的編號及兩點座標,從1開始掃面,判斷這個點是否在地毯上或內部即可

因爲順序輸入,所以最後一個符合條件的地毯一定是最上面的

代碼:
 

#pragma GCC optimize(2)
#include<stdio.h>
#include<algorithm>
#include<string.h>
#include<string>
#include<math.h>
#include<set>
#include<vector>
#include<iostream>
#include<queue>
#include<map>
#include<stack>
using namespace std;
const int maxn = 1e5 + 100;
const int inf = 0x3f3f3f3f;
typedef long long ll;
struct node
{
	int x, y, x1, y1, pos;
}edge[maxn];
int u, v;
int main()
{
	//freopen("C://input.txt", "r", stdin);
	int n;
	cin >> n;
	for (int i = 1; i <= n; i++)
	{
		cin >> edge[i].x >> edge[i].y >> u >> v;
		edge[i].x1 = edge[i].x + u;
		edge[i].y1 = edge[i].y + v;
		edge[i].pos = i;
	}
	int _u, _v, _pos;
	cin >> _u >> _v;
	_pos = -1;
	for (int i = 1; i <= n; i++)
	{
		if (_u >= edge[i].x && _u <= edge[i].x1 &&_v >= edge[i].y && _v <= edge[i].y1)
		{
			_pos = edge[i].pos;
		}
	}
	cout << _pos << endl;
	return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章