【t086】防护伞
2024-08-31 18:31:13
Time Limit: 1 second
Memory Limit: 128 MB
【问题描述】
据说2012的灾难和太阳黑子的爆发有关。于是地球防卫小队决定制造一个特殊防护伞,挡住太阳黑子爆发的区域,减少其对地球的
影响。由于太阳相对与地球来说实在是太大了,我们可以把太阳表面看作一个平面,中心定为(0,0)。根据科学家的情报,在
2012时,太阳表面上产生N个黑子区域,每一个黑子视为一个点。特殊防护伞可以看作一个巨大的圆面,现在地球防卫小队决定
将它的中心定位于某一个黑子,然后用伞面挡住其他黑子。因为制造防护伞的材料成本特别高,所以我们希望伞面尽可能的小。
[数据范围]
对于50%的数据:2 <= N <= 100
对于100%的数据:2 <= N <= 1,000
-10,000 <= x,y <= 10,000
[注意]
精确到小数点后4位
Pi = 3.1415926535
【输入格式】
第1行:一个整数N,表示黑子个数
第2..N-1行:每行两个整数,表示黑子的坐标(x,y)
【输出格式】
第1行:一个实数,表示伞的面积
Sample Input
3
0 1
-8 -4
-1 4
Sample Output
279.6017
【题目链接】:http://noi.qz5z.com/viewtask.asp?id=t086
【题解】
枚举以哪个黑子为中心;
确定哪个中心黑子之后;这个防护伞的最小半径就确定了(即这个点到其他点的最远距离);
在枚举的中心黑子形成的圆中选择半径最小的就好;
pi要按照所给的值不能写acos(-1.0);
【完整代码】
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cmath>
#define LL long long
using namespace std;
const int MAXN = 1e3+10;
const LL INF = 1e18;
const double pi = 3.1415926535;
struct abc
{
LL x,y;
};
int n;
abc a[MAXN];
LL sqr(LL x)
{
return x*x;
}
int main()
{
//freopen("F:\\rush.txt","r",stdin);
cin >> n;
for (int i = 1;i <= n;i++)
cin >> a[i].x >> a[i].y;
LL ans = INF;
for (int i = 1;i <= n;i++)
{
LL d = 0;
for (int j = 1;j <= n;j++)
d = max(d,sqr(a[i].x-a[j].x)+sqr(a[i].y-a[j].y));
ans = min(ans,d);
}
double r = sqrt(double(ans));
printf("%.4lf\n",pi*r*r);
return 0;
}
最新文章
- TortoiseGit与github实现项目的上传
- Windows zabbix监控远程进程实现机制
- IT公司100题-tencent-打印所有高度为2的路径
- asihttprequest本机调试时正常,发布后闪退
- Golang 绘图基础 -绘制简单图形
- JVM剖析
- 向CodeBlocks的Project中添加calss文件时,出现No such file or directory错误的解决方案
- Spring 的微内核与FactoryBean扩展机制--转载
- other
- 【JavaScript】双引号问题
- 面向对象---java代码块
- vue-cli 官方模板webpack-simple的npm run dev 与npm run bulid的一些问题
- CentOSv6.8 修改防火墙配置、修改SSH端口
- XML基础学习
- QT多线程简单例子
- svn项目清除svn链接信息
- Java多线程之Callable接口与Runnable的实现以及选择
- 体验搜狐PaaS平台搜狐云景-自动调度(Autoscale)
- 39XML文档类
- Java-Runoob-高级编程:Java 网络编程
热门文章
- wget 指令学习之递归抓取文档技巧
- 【习题 8-4 UVA - 11491】Erasing and Winning
- thinkphp5空控制器和空操作
- Spark通过YARN提交任务不成功(包含YARN cluster和YARN client)
- Red Hat Enterprise Linux Server 5.5新增功能简介
- IIS进程回收 空闲时Net线程未运行
- vue踩坑记-在项目中安装依赖模块npm install报错
- Eclipse导入Maven项目出现错误:Unsupported IClasspathEntry kind=4
- SQL server 2012 安装SQL2012出现报错: 启用 Windows 功能 NetFx3 时出错
- iOS Threading编程指南 官方文档翻译第一篇(序言)