免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: covisd
打印 上一主题 下一主题

一道关于蜗牛爬绳子的题目。 [复制链接]

论坛徽章:
0
141 [报告]
发表于 2007-10-28 22:02 |只看该作者
原帖由 zhyesno 于 2007-10-9 14:32 发表
折成蜗牛每天能爬过的百分比
第一天:1/1000
第二天:1/2000
第三天:1/3000
.
.
.
.
.

我也是这么想的

论坛徽章:
0
142 [报告]
发表于 2007-10-29 01:17 |只看该作者
原帖由 linux_paly 于 2007-10-6 10:37 发表
爬不到的.......

假设绳长2米,  爬1米,匀长1米,又是2米,无限循环.......


认真想想是对的.....

你想当然了,均匀伸长的时候,会带着蜗牛往前面走

论坛徽章:
0
143 [报告]
发表于 2007-10-29 01:37 |只看该作者
原帖由 covisd 于 2007-10-6 06:06 发表
一根象皮绳长1000米,一只蜗牛在绳子的一端,朝向另一端爬行。蜗牛每个白天爬1米,晚上休息。绳子每个晚上会均匀拉长1000米。
假设蜗牛体力和绳子韧性都充分好,问最后蜗牛能否爬到绳子的另一端?如果可以,需 ...


我来做一做,答案是不能,理由如下:
假设蜗牛每天向另一端前进了Si,那么:
S1=1+1/2
S2=1+S1*(1/3)
S3=1+S2*(1/4)
..........
Sn=1+Sn-1*(1/(n+1))
改写一下:
2S1 = 1+2
6S2 = 6+2S1
..........
(n+1)!Sn=(n+1)!+n!(Sn-1)
相加
(n+1)!Sn = 1+2+3!+4!+.....(n+1)!
n天之后,绳子长度为1000n,只要比较Sn和1000n 的大小即可
很显然,Sn=(1/(n+1)!)+(2/(n+1)!)..........+1 (一共n+1项) < 1000n

论坛徽章:
0
144 [报告]
发表于 2007-10-29 04:50 |只看该作者
原帖由 bluesky_jxc 于 2007-10-29 01:37 发表


我来做一做,答案是不能,理由如下:
假设蜗牛每天向另一端前进了Si,那么:
S1=1+1/2
S2=1+S1*(1/3)
S3=1+S2*(1/4)
..........
Sn=1+Sn-1*(1/(n+1))
改写一下:
2S1 = 1+2
6S2 = 6+2S1
..........
(n+1)!Sn=(n+1)!+n!(Sn-1)
相加
(n+1)!Sn = 1+2+3!+4!+.....(n+1)!
n天之后,绳子长度为1000n,只要比较Sn和1000n 的大小即可
很显然,Sn=(1/(n+1)!)+(2/(n+1)!)..........+1 (一共n+1项) < 1000n
兄弟前面帖子都看了吗?你这里阶乘来得勉强。为什么要
6S2 = 6+2S1
..........
(n+1)!Sn=(n+1)!+n!(Sn-1)

3S2 = 3+S1
..........
(n+1)Sn=(n+1)+(Sn-1)
不是蛮好吗?

论坛徽章:
0
145 [报告]
发表于 2007-10-29 13:03 |只看该作者
原帖由 linux_paly 于 2007-10-6 10:57 发表
均匀拉长   没错呀....        2x呀....

你理解错了。是从头到尾的伸长,而不是在蜗牛所在地向目的地伸长。

论坛徽章:
0
146 [报告]
发表于 2007-10-29 16:16 |只看该作者
原帖由 ypxing 于 2007-10-6 10:12 发表
大家好像都算错了.
看看下面的解题步骤:
设蜗牛爬了x个白天
则绳子最后长为:1000*x
第一个白天的爬的1米变为:1*(2000/1000)*(3000/2000)*...*(1000x/1000(x-1))=x
第二个..........................:1*(30 ...
蜗牛早死了

论坛徽章:
0
147 [报告]
发表于 2007-10-29 16:16 |只看该作者
小弟解法如下(开始学C    o(^_^)o):
设蜗牛N天到达终点
则绳子总长度为1000+N*1000
绳子增长总系数为1000/N*1000=1/N倍
蜗牛额外前进1000*1/N=1000/N米
则蜗牛总前进1+1000/N米
则1000+N*1000=1+1000/N
1000N^2-999N-1000=0


#include <stdio.h>
#include <math.h>
main()
{
   float n,a,b;
   if(999^2-4*1000*(-1000)<0)
     {
      printf("蜗牛无法到达终点!\n");
      }
    else
     {
      a=-(-999)/(2*1000)+sqrt(2*(-999)-4*1000*(-1000)) / (2*2000) ;
      b=-(-999)/(2*1000)-sqrt(2*(-999)-4*1000*(-1000))/ (2*2000) ;
        if(a>0)
           {printf("蜗牛%i到达终点!\n,ceil(a)");}
        if(b>0)
           {printf("蜗牛%i到达终点!\n,ceil(b)");}
     }
  }

论坛徽章:
0
148 [报告]
发表于 2007-10-29 16:19 |只看该作者
有这么材质好的绳子吗?

论坛徽章:
0
149 [报告]
发表于 2007-10-29 17:22 |只看该作者
设天数为X 走过的路长为Y 剩余路长为Z 则:
X     Y      Z
1     1      999
2     3      1996
3     4.5   2991.5
..........
从上面的推演可以看出,Y的增长速度要块与Z
也就是所蜗牛走过的路的增长速率要块于路长增长的速率,所以蜗牛是可以到达终点的
f(1)=1/1000
f(2)=((1000*2)*(1/1000)+1)/1000*2
......
f(n)=((1000n)*f(n-1)+1)/1000n
当f(n)=1时,便走到终点了。

f(n)=f(n-1)+1/1000n
好像又回到递归了

[ 本帖最后由 nig.daemon 于 2007-10-29 18:07 编辑 ]
budognai 该用户已被删除
150 [报告]
发表于 2007-10-30 17:57 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP