题解 | #求小球落地5次后所经历的路程和第5次反弹的高度#

求小球落地5次后所经历的路程和第5次反弹的高度

http://www.nowcoder.com/practice/2f6f9339d151410583459847ecc98446

// 这很明显就是一个递归,递归的参数就是次数其实高度以及最后的长度
#include<stdio.h>
#include<iostream>
#include<vector>

using namespace std;



pair<float, float> dfs(float height , int count, float res) {
//     cout<<"h: "<<height<<" c: "<<count<<" res: "<<res<<endl;
    if(count == 0) {
        return {height,res};
    }

    res+=height+height/2;
    count--;
    return dfs(height/2,count,res);


}


int main() {
    float height;

    while(cin>>height) {
//         cout<<height<<endl;
        auto res = dfs(height,5,0.f);
        printf("%g \n",res.second-res.first);
//         cout<<res.second-res.first<<endl;
        printf("%0.5f",res.first);

    }

}
全部评论

相关推荐

Yki_:你要算时间成本呀,研究生两三年,博士三四年,加起来就五六年了,如果你本科去腾讯干五年,多领五年的年薪,加上公司内涨薪,可能到时候十五年总薪资也跟博士差不多
点赞 评论 收藏
分享
05-11 20:45
门头沟学院 Java
有担当的灰太狼又在摸...:零帧起手查看图片
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务