POJ -1328 Radar Installation

假设陆地的海岸线是一条无限延长的直线,海岛是一个个的点,现需要在海岸线上安装雷达,使整个雷达系统能够覆盖到所有的海岛。雷达所能覆盖的区域是以雷达为圆心半径为d的圆,我们用指标坐标系来描述,海岸线就是x轴,现在给出每个海岛的坐标与雷达的半径d,请编写一个程序计算出最少需要多少个雷达才能够将所有海岛全部覆盖?

 

输入:                              

输入将会有多组数据,每组数据第一行为n (1<=n<=1000),d,n为海岛个数,d为雷达半径,接下来n行,每行两个数描述海岛坐标。以n==0,d==0表示输入结束

 

输出:

每组数据对应一行,输出最少需要的雷达个数,如果不能满足,则输出-1,具体格式见样例。

 

样例输入:

3 2

1 2

-3 1

2 1

 

1 2

0 2

 

0 0

 

样例输出:

Case 1: 2

Case 2: 1

解题思路:该题题意是为了求出能够覆盖所有岛屿的最小雷达数目,每个小岛对应x轴上的一个区间,在这个区间内的任何一个点放置雷达,

则可以覆盖该小岛,区间范围的计算用[x-sqrt(d*d-y*y),x+sqrt(d*d-y*y)];这样,问题即转化为已知一定数量的区间,求最小数量的点,

使得每个区间内斗至少存在一个点。每次迭代对于第一个区间,选择最右边一个点, 因为它可以让较多区间得到满足, 如果不选择第一个区间

最右一个点(选择前面的点), 那么把它换成最右的点之后,以前得到满足的区间, 现在仍然得到满足,

所以第一个区间的最右一个点为贪婪选择, 选择该点之后, 将得到满足的区间删掉,进行下一步迭代, 直到结束。

#include<iostream>
#include<cmath>
#include<algorithm>
using namespace std;
struct p {
	double x;
	double y;
};
struct pp {
	double head;
	double end;
};
p point[1005];
pp points[1005];
bool c(pp x, pp y)
{
	return x.head < y.head;
}
int main()
{
	int n, d,j=0;
	while (cin >> n >> d && (n != 0 || d != 0))
	{
		for (int i = 0; i < n; i++)
		{
			cin >> point[i].x >> point[i].y;
			if (abs(point[i].y) > d)
			{
				cout << "Case " << ++j << ": -1" << endl;
				continue;
			}
			points[i].head = point[i].x - sqrt(d*d - point[i].y*point[i].y);
			points[i].end = point[i].x + sqrt(d*d - point[i].y*point[i].y);
		}
		sort(points, points + n, c);
		double t = points[0].end;
		int k = 1;
		for (int i = 1; i < n; i++)
		{
			if (points[i].head > t)
			{
				k++;
				t = points[i].end;
			}
		}
		j++;
		cout << "Case " << j << ": " << k << endl;
	}
	return 0;
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园的建设目标是通过数据整合、全面共享,实现校园内教学、科研、管理、服务流程的数字化、信息化、智能化和多媒体化,以提高资源利用率和管理效率,确保校园安全。 智慧校园的建设思路包括构建统一支撑平台、建立完善管理体系、大数据辅助决策和建设校园智慧环境。通过云架构的数据中心与智慧的学习、办公环境,实现日常教学活动、资源建设情况、学业水平情况的全面统计和分析,为决策提供辅助。此外,智慧校园还涵盖了多媒体教学、智慧录播、电子图书馆、VR教室等多种教学模式,以及校园网络、智慧班牌、校园广播等教务管理功能,旨在提升教学品质和管理水平。 智慧校园的详细方案设计进一步细化了教学、教务、安防和运维等多个方面的应用。例如,在智慧教学领域,通过多媒体教学、智慧录播、电子图书馆等技术,实现教学资源的共享和教学模式的创新。在智慧教务方面,校园网络、考场监控、智慧班牌等系统为校园管理提供了便捷和高效。智慧安防系统包括视频监控、一键报警、阳光厨房等,确保校园安全。智慧运维则通过综合管理平台、设备管理、能效管理和资产管理,实现校园设施的智能化管理。 智慧校园的优势和价值体现在个性化互动的智慧教学、协同高效的校园管理、无处不在的校园学习、全面感知的校园环境和轻松便捷的校园生活等方面。通过智慧校园的建设,可以促进教育资源的均衡化,提高教育质量和管理效率,同时保障校园安全和提升师生的学习体验。 总之,智慧校园解决方案通过整合现代信息技术,如云计算、大数据、物联网和人工智能,为教育行业带来了革命性的变革。它不仅提高了教育的质量和效率,还为师生创造了一个更加安全、便捷和富有智慧的学习与生活环境。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值