为什么只有18分
查看原帖
为什么只有18分
585865
qiaoyushu6楼主2022/8/8 17:08
#include<bits/stdc++.h>
using namespace std;
const int maxn=10000+10;
int cnt=0;
struct node
{
	long long x,h;
	bool flag=false;
} a[maxn];
bool cmp(node a,node b)
{
	return a.x<b.x;
}
int n;
long long d,h2; 
int main()
{
	cin>>n>>d;
	for(int i=1; i<=n; i++)
	{
		cin>>a[i].x>>a[i].h;
	}
	sort(a+1,a+n+1,cmp);
	for(int i=1; i<=n; i++)
	{
		h2=a[i].h*2;
		for(long long j=a[i].x-d; j<=a[i].x+d; j++)
		{
			if(a[j].h>=h2)
			{
				if(a[j].flag==false)
				{
					cnt++;
					a[j].flag=true;
				}
				else
				{
					continue;
				}
			}
		}
	}
	cout<<cnt;
	return 0;
}
2022/8/8 17:08
加载中...