题解 | #计算小球走过的路程和反弹高度#
计算小球走过的路程和反弹高度
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; }