我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

本页主题: 【讨论】汽车加油问题 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

ljpdxj



性别: 帅哥 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 687
威望: 0
浮云: 1108
在线等级:
注册时间: 2006-02-28
最后登陆: 2008-06-29

5come5帮你背单词 [ after /'a:ftə/ prep. 在…以后,在…后面;ad. 以后,后来;conj. 在…以后 ]


【讨论】汽车加油问题

本帖被 zhd32 执行提前操作(2007-11-26)
题目如下:
起点处有一辆装满油的车和n桶油,车的油箱刚好可以装一桶油,该车用一桶油可以跑100公里。另外该车尽且只能达载一桶油,现实现一个函数,输入参数是n,返回值为该车开出距离起点的最大距离。最后的结果取整。注意:邮箱里的油每次用完前不能再加油。

主要是算法哈!
规范一下函数:
Copy code
int MaxLength(int n)
{
    //填写你的代码或描述算法
}



[ 此帖被ljpdxj在2007-11-22 22:17重新编辑 ]
顶端 Posted: 2007-11-22 12:29 | [楼 主]
wsdd



性别: 帅哥 状态: 该用户目前不在线
等级: 鹤立鸡群
发贴: 1078
威望: 0
浮云: 1105
在线等级:
注册时间: 2006-11-02
最后登陆: 2009-06-10

5come5帮你背单词 [ meantime /'mi:n'taim/ n. 其时,在此期间;ad. 同时,当时 ]


int MaxLength(int n)
{if(n==1)
return 100;
else
return((int)(100/(2*n-3))+MaxLength(n-1));   
}
对吗?
本帖最近评分记录:
  • 浮云:10(zhd32) 加起~~~~
  • 浮云:1(ljpdxj) 蝈蝈说一下算法思路哈~其实我也没有搞懂。。。
  • 顶端 Posted: 2007-11-22 19:16 | [1 楼]
    wsdd



    性别: 帅哥 状态: 该用户目前不在线
    等级: 鹤立鸡群
    发贴: 1078
    威望: 0
    浮云: 1105
    在线等级:
    注册时间: 2006-11-02
    最后登陆: 2009-06-10

    5come5帮你背单词 [ expose /iks'pəuz/ vt. 使暴露,使面临,使感光,使曝光,揭露,提发,曝光 ]


    思路应该是,
    1:假设有n桶油,先找到第一点,然后把n-1桶油从原点运到第一点(往返多次运,设原点到第一点的距离为L,则总路程为(2n-3)L,此过程中用掉1桶油),因而从原点到第一距离为100/(2n-3);
    2:余下的就是找到第二点,把n-2桶油从第一点移到第二点(也用掉一桶油),
    3:依此类推,最后一桶油可以移动100公里,用递归就可以实现了..
    顶端 Posted: 2007-11-22 22:37 | [2 楼]
    wsdd



    性别: 帅哥 状态: 该用户目前不在线
    等级: 鹤立鸡群
    发贴: 1078
    威望: 0
    浮云: 1105
    在线等级:
    注册时间: 2006-11-02
    最后登陆: 2009-06-10

    5come5帮你背单词 [ animation /ænə'meiən/ n. 生气,生机,生动,活泼,动画片,动画制作 ]


    n=1,n=2的时候不需要往返吧,,所以2*n-3是从n>=2开始的..
    顶端 Posted: 2007-11-22 22:47 | [3 楼]
    wsdd



    性别: 帅哥 状态: 该用户目前不在线
    等级: 鹤立鸡群
    发贴: 1078
    威望: 0
    浮云: 1105
    在线等级:
    注册时间: 2006-11-02
    最后登陆: 2009-06-10

    5come5帮你背单词 [ prevention /pri'venən/ n. 预防,防止,阻上,妨碍 ]


    如果是2*n-1那就表示了n=2的时候,从原点到第一点走了3遍.(其实只有1 遍)....
    顶端 Posted: 2007-11-22 22:50 | [4 楼]
    wsdd



    性别: 帅哥 状态: 该用户目前不在线
    等级: 鹤立鸡群
    发贴: 1078
    威望: 0
    浮云: 1105
    在线等级:
    注册时间: 2006-11-02
    最后登陆: 2009-06-10

    5come5帮你背单词 [ its /its/ pron. 它的 ]


    Quote:
    引用第10楼zhd32于2007-11-22 22:50发表的  :


    大家说的 n 不是一个东西

    哦,看到了,,原来本身就是满油啊..呵呵,没注意到...
    本帖最近评分记录:
  • 浮云:1(ljpdxj) 蝈蝈也再想想有否其他算法哈,我也不知道正确答案, ..
  • 顶端 Posted: 2007-11-22 22:51 | [5 楼]
    wsdd



    性别: 帅哥 状态: 该用户目前不在线
    等级: 鹤立鸡群
    发贴: 1078
    威望: 0
    浮云: 1105
    在线等级:
    注册时间: 2006-11-02
    最后登陆: 2009-06-10

    5come5帮你背单词 [ afternoon /'a:ftə'nu:n/ n. 下午,午后 ]


    又看了下,,不能把2n-3改成2n-1,要在代码前加上n=n+1;
    还有100/(2*n-3)也要改成100.0/(2*n-3);
    最后输入n=100,则输出428.不知道和网上的正确答案差多少??
    #include<stdio.h>
    double MaxLength(int);
    void main()
    {
      printf("please input a number:\n");
    int n;
    scanf("%d",&n);
    printf("the result is:%d\n",(int)MaxLength(n+1));
    }
    double MaxLength(int n)
    {if(n==1)
    return 100;
    else
    return(100.0/(2*n-3)+MaxLength(n-1));
    }


    [ 此帖被wsdd在2007-11-23 10:29重新编辑 ]
    顶端 Posted: 2007-11-22 23:18 | [6 楼]
    wsdd



    性别: 帅哥 状态: 该用户目前不在线
    等级: 鹤立鸡群
    发贴: 1078
    威望: 0
    浮云: 1105
    在线等级:
    注册时间: 2006-11-02
    最后登陆: 2009-06-10

    5come5帮你背单词 [ remove /ri'mu:v/ v. 除去,脱掉,消除,移动,移开,免职,开除 ]


    汗,原来程序真的不是编出来的,是调试出来的...越调问题越多....
    顶端 Posted: 2007-11-22 23:24 | [7 楼]
    我来我网·5come5 Forum » 程序员之家

    Total 0.012863(s) query 6, Time now is:07-04 11:58, Gzip enabled
    Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号