博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
bzoj千题计划209:bzoj1185: [HNOI2007]最小矩形覆盖
阅读量:6830 次
发布时间:2019-06-26

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

 

题解去看它

 

精度真是卡的我醉生梦死,w(゚Д゚)w    O(≧口≦)O

bzoj改成long double 就过了

洛谷仍处于

输出x.99999,答案输出x+1.00000

输出-0.00000,答案输出0.00000

救命啊~~~~(>_<)~~~~

 

来自大佬的建议:输出double时用%f

 

#include
#include
#include
#define N 50001 using namespace std; const long double eps=1e-10; int dcmp(long double x){ if(fabs(x)
1 && Cross(c[m-1]-c[m-2],p[i]-c[m-2])<=0) m--; c[m++]=p[i]; } int k=m; for(int i=n-2;i>=0;--i) { while(m>k && Cross(c[m-1]-c[m-2],p[i]-c[m-2])<=0) m--; c[m++]=p[i]; } m--; return m;} long double getdis(Point A,Point B){ return sqrt((A.x-B.x)*(A.x-B.x)+(A.y-B.y)*(A.y-B.y));} void RotatingCaliper(Point *c,int m){ long double AnsArea=1e20,AnsPeri=1e20; int q=1,l=0,r=0; long double d,h,w,rw; for(int p=0;p
fabs(Cross(c[p]-c[p+1],c[q]-c[p+1]))) q=(q+1)%m; while(dcmp(Dot(c[p+1]-c[p],c[r+1]-c[r]))>0) r=(r+1)%m; if(!l) l=q; while(dcmp(Dot(c[p+1]-c[p],c[l+1]-c[l]))<0) l=(l+1)%m; d=Length(c[p+1]-c[p]); h=fabs(Area2(c[p],c[p+1],c[q]))/d; w=Dot(c[p+1]-c[p],c[r]-c[l])/d; rw=Dot(c[r]-c[p],c[p+1]-c[p])/d; if(w*h

 

转载于:https://www.cnblogs.com/TheRoadToTheGold/p/8257430.html

你可能感兴趣的文章
【Xamarin挖墙脚系列:配置Mac之间的连接问题】
查看>>
Intel大坑之中的一个:丢失的SSE2 128bit/64bit 位移指令,马航MH370??
查看>>
设置控件全局显示样式 appearance
查看>>
awstats 日志分析工具linux下的安装和使用
查看>>
一些硬盘相关知识
查看>>
创建、删除表
查看>>
Java继承中成员方法的overload(重载/过载)
查看>>
C#的Timer
查看>>
性能测试工具Locust
查看>>
The POM for XXX:jar:${com.ld.base.service.version} is missing, no dependency information available
查看>>
线程管理:守护线程的创建和运行
查看>>
iOS时间问题
查看>>
关于高可用的系统
查看>>
systemtap-note-6-userspace-stack-backtrace
查看>>
netty支持的各种socketchannel实现及比较
查看>>
配置文件操作(获取路径、及取得相应数据)
查看>>
HDU 3944 DP? [Lucas定理 诡异的预处理]
查看>>
[maven] settings 文件 国内镜像站
查看>>
[LeetCode] Encode and Decode TinyURL 编码和解码精简URL地址
查看>>
[转]关于OpenGL的绘制上下文
查看>>