当前位置:文档之家› 从李白沽酒问题谈起

从李白沽酒问题谈起

8. 从李白沽酒问题谈起
“李白提壶去买酒,遇店加一倍,见花喝一斗;三遇店和花,喝光壶中酒. 试问壶中原有多少酒?”这是有名的“李白沽酒”问题.
一、李白沽酒问题的解法
解法1:倒推法.
解:三遇花时,喝光壶中酒,但“见花喝一斗”,故在三遇花前有酒一斗;由“遇店加 一倍”知,在三遇店之前有酒11122
⨯=斗. 那么在二遇花前有酒13122+=斗;二遇店之前有酒313224
⨯=斗. 在一遇花前有酒37144+=斗;一遇店之前有酒717428
⨯=斗. 故壶中原有78
斗酒. 解法2:方程法.
解:设壶中原有x 斗酒,那么:一遇店后有2x 斗酒,一遇花后有2x -1斗酒;二遇店后有2(2x -1)斗酒,二遇花后有2(2x -1)-1斗酒;三遇店后有2[2(2x -1)-1]斗酒,三遇花后有2[2(2x -1)-1]-1斗酒.
因“三遇店和花,喝光壶中酒”,故:2[2(2x -1)-1]-1 = 0,解得
232217,28
x x ++==. 即知壶中原有78
斗酒. 二、白沽酒问题的变更及其解法
把李白沽酒问题中的“三遇店和花,喝光壶中酒”变更为“十遇店和花,喝光壶中酒”, 那么此时的问题又如何解呢?
显然利用“倒推法”太费时,不合算;利用方程法所列的方程也不简单. 这里给出另外一种比较简单的解法.
解:设每次在遇店之前有x 斗酒,在遇花之后有y 斗酒,那么y 是x 的函数,由题意有:()21y f x x ==-.
若最初壶中原有x 斗酒,那么十遇店和花之后就有[10]10()()fff ff x f
x ⋅⋅⋅=个斗酒.
[10]()f x 就表示()f x 的10次迭代函数. 怎样快速求出[10]()f x 呢?
我们将()21f x x =-改写为()2(1)1f x x =-+,那么[()]2[()1]1f f x f x =-+ = 22(1)1x -+;3{[()]}2(1)1f f f x x =-+;… ;[10]10()2(1)1f x x =-+.
但因“十遇店和花,喝光壶中酒”,所以[10]()0f x =,即有:10110231,21024
x x =-=. 这一解法真是妙趣横生,耐人寻味. 不管你把“三遇店和花”变更为“十遇店和花”,还是变更为“万遇店和花”,问题都不难解决.
但是兴奋之余不禁要问,为什么把()21f x x =-改写为()2(1)1f x x =-+后,计算就如此简单而有规律呢?道理何在呢?
三、刨根究底
人们把方程“()f x x =”的根叫做()f x 的“不动点”. 显然对于()(1)f x ax b a =+≠,
它的不动点是01b x a =-. 而()f x ax b =+改写为000()()()1b f x a x x x x a
=-+=-,便于迭代,它的n 次迭代(可以用数学归纳法证明)就是: []00()()()11n n n b b f x a x x x a x a a =-+=-
+--(思考:当1a =,即()f x x b =+时, []()?n f x =).
这就是把()21f x x =-改写为()2(1)1f x x =-+后,计算如此简单的原因所在. 以下我们再看几例.
例1 求一次函数()f x ,使得{[()]}f f f x =8x + 7. (安徽省1979年数学竞赛试题) 解:设()f x ax b =+使得[3]()87f x x =+. (1a ≠,为什么?)因()()1b f x a x a =-- 1b a +-,则[3]3()()11b b f x a x a a
=-+--与[3]()87f x x =+比较对应项系数有: 3a = 8,311a b b a a
-+-- = 7 2,1a b ⇒==. 故()21f x x =+.
例2 已知(),1x f x cx =+求证:[]()1n x f x ncx
=+ . 用数学归纳法可证明,略.
例3 已知
()f x =求证:[]()n f x =.
用数学归纳法可证明,略.
例4 已知1113,1,2
k k a a a +==
+ 求数列{}k a 的通项公式. 解:1k a +相当于李白沽酒变更问题解法中的y ,k a 相当于x. 由01122
x x x +=⇒=. 故11111(2)2()(2)2()2222k k k k a a a +=-+=-+=+. 从而推知11()22k k a -=+. 本文发表于华南师范大学主办的《中学数学研究》1987年第7期p32~33. 发表时署名 为:陕西省安康县师范学校 王凯(笔名).。

相关主题