主問題:是否任意自然數都能被不相同的斐波那契數之和表示?
答案:是。
可以參考 Zeckendorf"s theorem。
該定理指出:任意正整數都可表示為一個或多個不同的斐波那契數之和。
即,對任意的正整數 ,存在正整數 ,且滿足 ,有:
表示第 個斐波那契數。
證明:數學歸納法。
求解:貪心演算法。
上面說的是存在性,其實 Zeckendorf"s theorem 還提出了唯一性:
任意正整數 的 Zeckendorf"s representation 都是唯一的。
概念解釋:如果幾個斐波那契數和為 ,且這些斐波那契數彼此不相鄰,那麼將這幾個數之和稱作 的 Zeckendorf"s representation。
唯一性的潛臺詞是:任意正整數不但可以表示成一個或多個斐波那契數之和,而且必定擁有一個 Zeckendorf"s representation。
附加題:怎樣的線性遞推數列能表示所有自然數?
補充:這句話含義有些模糊,題主是不是想表達:從一個數列取不同的數,其和能組成任意自然數(限定為正整數似乎更好),這樣的數列具備什麼樣的形式?
答案:這樣的數列需要滿足的形式非常簡單。
此類數列被稱為 complete sequence。
假如一個數列為 ,那麼只需滿足如下性質,該數列就是一個 complete sequence:
①
② 對任意正整數 ,有 ,其中
並且這兩個條件是充分必要的。
由上面兩個條件可以得到推論:
② 對任意正整數 ,有
即滿足這兩個性質的數列也是一個 complete sequence。
不過這個推論只是 complete sequence 的充分條件,而不是必要條件。數列 A203074 即為一個反例。
證明從略。
顯然斐波那契數列一定是一個 complete sequence。
Update: @靈劍 的答案給出了部分證明過程,我就不贅述了。
三個相鄰自然數的和,是中間的數的3倍,
所以,
中間的數是84÷3=28
這三個自然數分別是27,28,29
主問題:是否任意自然數都能被不相同的斐波那契數之和表示?
答案:是。
可以參考 Zeckendorf"s theorem。
該定理指出:任意正整數都可表示為一個或多個不同的斐波那契數之和。
即,對任意的正整數 ,存在正整數 ,且滿足 ,有:
表示第 個斐波那契數。
證明:數學歸納法。
求解:貪心演算法。
上面說的是存在性,其實 Zeckendorf"s theorem 還提出了唯一性:
任意正整數 的 Zeckendorf"s representation 都是唯一的。
概念解釋:如果幾個斐波那契數和為 ,且這些斐波那契數彼此不相鄰,那麼將這幾個數之和稱作 的 Zeckendorf"s representation。
唯一性的潛臺詞是:任意正整數不但可以表示成一個或多個斐波那契數之和,而且必定擁有一個 Zeckendorf"s representation。
附加題:怎樣的線性遞推數列能表示所有自然數?
補充:這句話含義有些模糊,題主是不是想表達:從一個數列取不同的數,其和能組成任意自然數(限定為正整數似乎更好),這樣的數列具備什麼樣的形式?
答案:這樣的數列需要滿足的形式非常簡單。
此類數列被稱為 complete sequence。
假如一個數列為 ,那麼只需滿足如下性質,該數列就是一個 complete sequence:
①
② 對任意正整數 ,有 ,其中
並且這兩個條件是充分必要的。
由上面兩個條件可以得到推論:
①
② 對任意正整數 ,有
即滿足這兩個性質的數列也是一個 complete sequence。
不過這個推論只是 complete sequence 的充分條件,而不是必要條件。數列 A203074 即為一個反例。
證明從略。
顯然斐波那契數列一定是一個 complete sequence。
Update: @靈劍 的答案給出了部分證明過程,我就不贅述了。