牛客网 求小球落地5次后所经历的路程和第5次反弹的高度
链接:https://www.nowcoder.com/questionTerminal/2f6f9339d151410583459847ecc98446
来源:牛客网
假设一个球从任意高度自由落下,每次落地后反跳回原高度的一半; 再落下, 求它在第5次落地时,共经历多少米?第5次反弹多高?
/**
* 统计出第5次落地时,共经过多少米?
*
* @param high 球的起始高度
* @return 英文字母的个数
*/
public static double getJourney(int high)
{
return 0;
}
/**
* 统计出第5次反弹多高?
*
* @param high 球的起始高度
* @return 空格的个数
*/
public static double getTenthHigh(int high)
{
return 0;
}
输入描述:
输入起始高度,int型
输出描述:
分别输出第5次落地时,共经过多少米第5次反弹多高
示例1
输入
1
输出
2.875 0.03125
不知道是不是题目保留小数问题的原因,结果总是AC不过。
while True: try: num = 5 out = int(raw_input()) sumout = out for i in range(num): out = float(out)/2 sumout += out * 2 print(sumout - out*2) print(float(out)) except: break
看了别人写的,脑洞是真的厉害。。。
import sys while True: try: string = sys.stdin.readline() number = int(string) print 2.875 * number print 0.03125 * number except: break
##按比例缩放就好了。
浙公网安备 33010602011771号