2020牛客寒假算法基础集训营5 B.牛牛战队的比赛地 (二分/三分)
2024-09-06 06:58:55
https://ac.nowcoder.com/acm/contest/3006/B
三分做法
#include<bits/stdc++.h>
#define inf 0x3f3f3f3f
using namespace std;
typedef long long ll;
typedef pair<int,int> pll;
const int maxn=1e5+;
const int mod =1e9+;
const double EPS = 1e-;
struct node
{
double x;
double y;
};
node s[maxn];
int n;
double Calc(double num)
{
double ans=;
for(int i=;i<=n;i++)
{
double q=sqrt((num-s[i].x)*(num-s[i].x)+s[i].y*s[i].y);
if(q>ans)
{
ans=q;
}
}
return ans;
}
int main()
{
cin >> n;
int a,b;
for(int i=; i<=n; i++)
{
cin >> a >> b;
s[i].x=a;
s[i].y=b;
}
double Left, Right;
double mid, midmid;
double mid_value, midmid_value;
Left = -;
Right = ;
while (Left + EPS < Right)
{
mid = (Left + Right)/;
midmid = (mid + Right)/;
mid_value = Calc(mid);
midmid_value = Calc(midmid);
if (mid_value <= midmid_value)
Right = midmid;
else
Left = mid;
}
cout << Calc(Left) << endl;
return ;
}
最新文章
- 【VC++技术杂谈006】截取电脑桌面并将其保存为bmp图片
- sizzle分析记录:分解流程
- MyBatis入门(一)---基本使用
- [转]PhoneGap使用PushPlugin插件实现消息推送
- SqlServer2008R2 修改表中列为自增列
- iOS学习笔记---oc语言第七天
- nova分析(7)—— nova-scheduler
- Oracle中创建视图
- [置顶] 《Windows编程零基础》__2 一个完整的程序
- int *(*a[5])(int, char*)
- beini系列_2_beini装入虚拟机
- iOS学习——UI基础UIButton(七)
- ELK系列~Nxlog日志收集加转发(解决log4日志换行导致json转换失败问题)
- 【转】VUE 爬坑之旅-- 如何对公共JS,CSS进行统一管理,全局调用
- 基于FPGA的视频时序生成
- Nginx&#160;filebeat+logstash+Elasticsearch+kibana实现nginx日志图形化展示
- Oracle 数据库逻辑结构2.md
- 利用redis制作消息队列
- Nodejs之路:非I/O的异步API
- Failed to load resource: the server responded with a status of 404 (Not Found) favicon.ico文件找不到