一道炒鸡水的题
要让我说思路的话,那么就是四十五度仰望天空,对!就是这个角度抛球。(答案也就是每次最高点时的高度h*2的和)
然后就是精度问题了(然而这个题的精髓就是精度),当时比赛的时候没时间去思考了,我扬手就敲了一个while循环,没想到这都可以!
代码如下:
#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
double m, p, e = 1000;
double h, g = 9.8, ans;
const int n = 10000;
scanf("%lf %lf", &m, &p);
ans = 0;
while(e > 0.000000001)//或者while(n--)
{
h = e*100/(m*g);
ans += h*2;
e = e*(1-p*0.01);
}
printf("%.3f\n", ans);
return 0;
}