Responsive image

问题 1159 --蚂蚁的难题(语言入门)

1159: 蚂蚁的难题(语言入门)

时间限制: 1 Sec  内存限制: 128 MB
提交: 7  解决: 5
[提交][状态][讨论版][命题人:]

题目描述

蚂蚁又遇到一个难题。
有一个圆锥,地面半径为A(单位:cm),高度为H(单位:cm),现在蚂蚁位于其中一条母线R与底面的交点P处,母线R的中点M有一袋旺仔小馒头,饿极了的蚂蚁非常想吃,而且,母线R的正对面有另一条母线L(位置如图所示),上面布满了香槟,思量之后蚂蚁决定先取香槟,再拿小馒头,最后回到P点。但是,问题来了,笨笨的蚂蚁不知道要怎么走了,因为懒惰的蚂蚁肯定想最省体力,现在请你来写个程序,帮助他找到其中走的最短距离是多少。
Ps:香槟得到一次即可。得到母线L、点M对应物品的方式为到达或经过。母线L两端点处也有香槟。
(PI=3.1415926)

输入描述

有多组测试数据。
每组测试数据一行,由两个数A,H组成。(0<A,H<100000)。A,H均为正整数。

输出描述

输出最少消耗多少体力。
结果保留两位小数。

样例输入

1 2
3 4
1000 1000

样例输出

4.43
10.00
2828.43

提示

发挥想象,画图分析,几何计算(注意:圆锥展开后的角度)


高和半径定义成double


来源

[提交][状态]
ACM算法攻关部