找回密码
 欢迎注册
楼主: northwolves

[讨论] project euler 73

[复制链接]
发表于 2009-4-23 21:29:48 | 显示全部楼层
farey sequence.
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-4-23 21:37:35 | 显示全部楼层

回复 5# northwolves 的帖子

很简单,因为我们本来就不需要最简形式。我们只需要遍历区间中的所有互异分数就可以了。
a/b<(a+c)/(b+d)<c/d.
(a/b,c/d)=(a/b,(a+c)/(b+d)) + (a+c)/(b+d) + ((a+c)/(b+d), c/d) .
于是, 得到了递归式.

[ 本帖最后由 medie2005 于 2009-4-23 21:43 编辑 ]
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-4-23 22:05:35 | 显示全部楼层
为了方便理解递归过程的具体细节,我用Mathematica实现了一下:

我有意把迭代的深度上限设成20。这个时候对于深度大于20的调用Mathematica会不运行,而直接返回调用函数的本身,即出现附件所示现象。
截图02.jpg
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-5-7 02:14 , Processed in 0.057441 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表