CodeForces 549H | 二分答案
2024-08-23 21:08:40
参考了这个博客哇
#include<cstdio>
#include<algorithm>
#include<cstring>
#define Max(a,b,c,d) max(max(a,b),max(c,d))
#define Min(a,b,c,d) min(min(a,b),min(c,d))
using namespace std;
double a,b,c,d,l,r=1000000000,mid;
bool check(double lim)
{
double max_x=Max((a+lim)*(d+lim),(a-lim)*(d-lim),(a+lim)*(d-lim),(a-lim)*(d+lim));
double min_x=Min((a+lim)*(d+lim),(a-lim)*(d-lim),(a+lim)*(d-lim),(a-lim)*(d+lim));
double max_y=Max((b+lim)*(c+lim),(b+lim)*(c-lim),(b-lim)*(c-lim),(b-lim)*(c+lim));
double min_y=Min((b+lim)*(c+lim),(b+lim)*(c-lim),(b-lim)*(c-lim),(b-lim)*(c+lim));
if(max_x-min_y>=0&&min_x-max_y<=0)
return 1;
else return 0;
}
int main()
{
scanf("%lf%lf%lf%lf",&a,&b,&c,&d);
for (int i=1;i<=100;i++)
{
mid=(l+r)/2;
if (check(mid)) r=mid;
else l=mid;
}
printf("%.10lf",l);
return 0;
}
最新文章
- iOS UITableViewableViewCell自适应高度
- android环境下的即时通讯
- iOS通知
- AngularJS引入Echarts的Demo
- Thrift 的原理和使用
- BZOJ 3827: [Poi2014]Around the world
- ccf559c
- Deep Copy cv::StereoBM 深度拷贝
- Jni中C++和Java的参数传递 参数对照
- 《OD学hadoop》第一周0626 作业二:Linux基础
- java 四种逻辑运算符
- CATransition类动画
- 关于jquery中封装函数如何传递当前元素的问题
- 使用multer搭建一个图片接收服务器
- Loadrunner web_url函数学习(转贴)
- orcale和hive常用函数对照表(?代表未证实)
- Linux之shell典型应用之脚本实现
- 文件I/O实践(2) --文件stat
- django-restframework之缓存系统
- 设计、定义并实现Complex类
热门文章
- 51nod 1298 圆与三角形——计算几何
- BZOJ3884: 上帝与集合的正确用法(欧拉函数 扩展欧拉定理)
- Spring Cloud 入门 Consul-Server服务注册
- cordforce Educational Codeforces Round 47 补题笔记 <;未完>;
- TCP_Wrappers &; PAM &; Nsswitch服务
- nginx虚拟主机搭建
- 如何理解MVVM?
- 解决.NET Core R1中文乱码问题
- 学习Pytbon第十八篇,异常处理
- python学习之变量类型