博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
cf1059D. Nature Reserve(三分)
阅读量:5897 次
发布时间:2019-06-19

本文共 1575 字,大约阅读时间需要 5 分钟。

题意

Sol

欲哭无泪啊qwq。。。。昨晚一定是智息了qwq

说一个和标算不一样做法吧。。

显然\(x\)轴是可以三分的,半径是可以二分的。

恭喜你获得了一个TLE的做法。。

然后第二维的二分是没有必要的,直接拿圆的标准方程推一下取个最大值就行了。。。。。昨晚没想到qwq给数学老师丢脸了。。

#include
#include
#include
#define double long double using namespace std;const double eps = 1e-7, INF = 1e18;const int MAXN = 1e5 + 10;inline int read() { char c = getchar(); int x = 0, f = 1; while(c < '0' || c > '9') {if(c == '-') f = -1; c = getchar();} while(c >= '0' && c <= '9') x = x * 10 + c - '0',c = getchar(); return x * f;}int N, up, down;double max(double a, double b) {return a > b ? a : b;}double min(double a, double b) {return a < b ? a : b;}struct Node { double x, y;}a[MAXN];int check(int x, int y) { if(x < 0 && y > 0) return 1; else return 0;}double mxr;double sqr(double x) { return x * x;}double f(double x) { double mx = 0; for(int i = 1; i <= N; i++) mx = max(mx, fabs((sqr(a[i].x - x) + sqr(a[i].y)) / (2.0 * a[i].y))); return mx;} int main() { N = read(); double L = INF, R = -INF; for(int i = 1; i <= N; i++) { a[i].x = read(), a[i].y = read(); up = min(up, a[i].y); mxr = max(a[i].y, mxr); L = min(a[i].x, L); R = max(a[i].x, R); } if(check(up, mxr)) {puts("-1"); return 0;} mxr = INF; if(up < 0) for(int i = 1; i <= N; i++) a[i].y = -a[i].y; int tim = 100; while(tim--) { double x = (2 * L + R) / 3, y = (L + 2 * R) / 3; f(x) < f(y) ? R = y : L = x; // printf("%Lf %Lf\n", f(x), f(y)); } printf("%.10Lf", f(L)); return 0; }

转载地址:http://elxsx.baihongyu.com/

你可能感兴趣的文章
webpack多页应用架构系列(七):开发环境、生产环境傻傻分不清楚?
查看>>
笨办法学C 练习1:启用编译器
查看>>
树的总结--树的性质(树的深度) leetcode
查看>>
nagios短信报警(飞信fetion20080522004-linrh4)
查看>>
【Android游戏开发之六】在SurfaceView中添加组件!!!!并且相互交互数据!!!!...
查看>>
linux 将大文件分成小文件
查看>>
CCNA- 距离矢量路由协议学习
查看>>
jira 配置 LDAP 访问
查看>>
企业实践用户邮箱导入/导出(第2部分)
查看>>
我的友情链接
查看>>
如何学习Linux命令-初级篇
查看>>
从Oracle Public Yum为Oracle Linux建立本地的Yum源
查看>>
在 SELECT 查询中使用表表达式
查看>>
静态路由和默认路由
查看>>
谈一谈Spring-Mybatis在多数据源配置上的坑
查看>>
2.1 shell语句
查看>>
【精益生产】车间现场管理的八大浪费
查看>>
springMVC国际化
查看>>
关于阿里开发者招聘节 |这5道笔试真题 你会吗!???
查看>>
C#的异常处理机制
查看>>