设为首页 加入收藏

TOP

UVA 303 Pipe (二)
2014-11-23 20:00:47 来源: 作者: 【 】 浏览:15
Tags:UVA 303 Pipe
GetCircleCircleIntersection(Circle c1,Circle c2,Point& p1,Point& p2){ double d=Length(c1.c-c2.c); if(dcmp(d)==0){ if(dcmp(c1.r-c2.r)==0) return -1;//两圆重合 return 0; } if(dcmp(c1.r+c2.r-d)<0) return 0; if(dcmp(fabs(c1.r-c2.r)-d)>0) return 0; double a=Angle(c2.c-c1.c,Vector(1,0)); double da=acos((c1.r*c1.r+d*d-c2.r*c2.r)/(2*c1.r*d)); p1=c1.point(a-da);p2=c1.point(a+da); if(p1==p2) return 1; return 2; } //-------------------------------------- //-------------------------------------- //-------------------------------------- //-------------------------------------- //-------------------------------------- int n; Point arr[25],arr2[25]; double fuck(Line l){ Point p; int i; for(i=0;i0||dcmp(p.y-arr2[i].y)<0){ if(i==0) return arr[0].x; Point q=GetLineIntersection(l.p,l.v,arr[i],arr[i]-arr[i-1]); p=GetLineIntersection(l.p,l.v,arr2[i],arr2[i]-arr2[i-1]); return max(p.x,q.x); } } return arr[n-1].x; } int main() { while(scanf("%d",&n)!=EOF&&n){ for(int i=0;i

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇HDU 1358 Period 下一篇递归与迭代

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·微服务 Spring Boot (2025-12-26 18:20:10)
·如何调整 Redis 内存 (2025-12-26 18:20:07)
·MySQL 数据类型:从 (2025-12-26 18:20:03)
·Linux Shell脚本教程 (2025-12-26 17:51:10)
·Qt教程,Qt5编程入门 (2025-12-26 17:51:07)