50分WA求助!
查看原帖
50分WA求助!
1051943
Curry_mvp楼主2024/8/10 09:59

本人思路:用结构体存储每一个地毯,对于询问的坐标挨个进行判断,不断更新答案

但是一半AC一半WA。。。。评测记录

代码如下:自己加了一点注释

#include <bits/stdc++.h>
using namespace std;
#define int long long
const int maxn=10005;
struct node
{
	int i;//记录地毯编号(但是好像没啥用) 
	int x1;//地毯起点横坐标 
	int y1;//地毯起点纵坐标 
	int x2;//地毯结束横坐标
	int y2;//地毯结束纵坐标
};
node a[maxn];
int n;
signed main ()
{
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		a[i].i=i;//记录编号 
		cin>>a[i].x1>>a[i].y1;
		int g,k;
		cin>>g>>k;
		a[i].x2=a[i].x1+g;//存坐标 
		a[i].y2=a[i].x2+k;
	}
	int xx,yy;
	cin>>xx>>yy;
	int ans=-1;//仿照第一篇题解,将ans初始值设为-1,这样出循环后不用特判 
	for(int i=1;i<=n;i++)
	{
		if(xx>=a[i].x1&&xx<=a[i].x2)
		{
			if(yy>=a[i].y1&&yy<=a[i].y2)
			{
				ans=i;//更新 
			}
		}
	}
	cout<<ans<<"\n";//输出 
 
	return 0;
}

求dalao帮忙改正

2024/8/10 09:59
加载中...