题解 | #计算小球走过的路程和反弹高度#
计算小球走过的路程和反弹高度
https://www.nowcoder.com/practice/ac674f68367149d5ad1f857a379e69c9
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
// 下落的高度和落地的次数
double h;
int n;
cin >> h;
cin >> n;
//记录第n次反弹时总共走过的记录
double dist=0;
for(int i=1;i<=n;i++){
h/=2;
//向下过程中走2*h,反弹h高度,总共3*h
dist+=h*3;
}
//由于要输出的是第n次落地时走了多少米,所以dist要减去最后反弹的高度h
cout<<fixed<<setprecision(1)<<dist-h<<" "<<h<<endl;
return 0;
}
查看7道真题和解析


