Finding the Radius for an Inserted Circle 数学几何

G.Finding the Radius for an Inserted Circle(运算几何,二分) 
题目链接:https://nanti.jisuanke.com/t/17314 
这道题需要数学知识,具体看下面。 
题意:这道题就是给你三个一模一样的圆,左边一个右边一个下面一个,三个圆两两相切,然后在这三个圆中间的地方找一个小圆,要求这个小圆与这三个大圆相切,这被称为一次操作,然后第二次操作的时候,就把下面的大圆替换成那个小圆,然后从这两个大圆和一个小圆中间再找一个更小的圆也与它们相切    (这个我没有想到这种替代的方法,妙,接下来就转换为递归思路),最后问你经过k次操作后那个小圆的半径是多少。 
思路:我们可以把三个圆的圆心两两相连,连成一个三角形,再把三个圆心与中间的小圆心相连,假设左右两个大圆的半径为R,下面的圆半径为r,中间的小圆半径为s,那么就可以转化成下图。 
这里写图片描述 
红色的边都是已知长度的,并且长度都在图中标记了出来,因为相切,所以两圆心的距离等于两圆半径之和。 
那么我们可以对图中的蓝色边做文章,蓝色边的长度可以等于sqrt((R+s)^2-R^2),也可以等于sqrt((R+r)^2-R^2)-r-s。这样我们让这两个等式相等,就可以通过R和r求出s了,不过这个方程组里有根号,不是很好解,所以我们可以用二分的方法去寻找方程的解。s求出来后我们就完成了一次操作,然后把s的值赋给r,我们就可以进行第二次操作了。 

转载于:https://www.cnblogs.com/LandingGuy/p/9280246.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值