题解 | #计算小球走过的路程和反弹高度#
计算小球走过的路程和反弹高度
https://www.nowcoder.com/practice/ac674f68367149d5ad1f857a379e69c9
将总路程path拆分成: 上次回弹的高度hBack 和本次下落的高度h
path += hBack + h;
```c++
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
// 下落的高度和落地的次数
double h;
int n;
cin >> h;
cin >> n;
// write your code here......
double hBack = 0;
double path = 0;
for (int i = 0; i < n; ++i)
{
path += hBack + h;
hBack = h * 0.5;
h = hBack;
}
/* cout << path << " ";
cout << hBack << endl;*/
printf("%.1lf %.1lf\n", path, hBack);
return 0;
}
```
#打工人##include <iomanip>
using namespace std;
int main() {
// 下落的高度和落地的次数
double h;
int n;
cin >> h;
cin >> n;
// write your code here......
double hBack = 0;
double path = 0;
for (int i = 0; i < n; ++i)
{
path += hBack + h;
hBack = h * 0.5;
h = hBack;
}
/* cout << path << " ";
cout << hBack << endl;*/
printf("%.1lf %.1lf\n", path, hBack);
return 0;
}
```
