(a)证明每个L> = 1,如果s是长度为L的自定义二进制数,则n(s)> = F~L
(b)证明每个L> = 1,如果s是长度为L的自定义二进制数,则n(s)<1。 F~L + 1
我试图通过感应证明没有运气,因为我做错了。我不确定如何为L> L>的一般情况证明这一点。 1。
&#39;〜&#39;是表示变量的下标
答案 0 :(得分:0)
让我们从A开始。
我会这样证明:
让
s
成为L=k
的自定义二进制字符串,以便k>=1
。根据自定义二进制字符串的定义,我们必须s~k = 1
因此n(s) = F~k + n(s~(k-1)...s(1)) = F~L + n(s~(k-1) ... s(1))
,或s
所代表的数字等于F~L
加上剩余{{1}所代表的数字k-1
的数字。由于我们不能有一个负长度的字符串,我们必须有s
但是,如果您需要以归纳方式证明它,您可以这样做:
基本情况:让
n(s) >= F~L
和L=1
成为长度为1的自定义二进制字符串。根据定义,我们必须拥有s
。因此s=1
,视需要。归纳假设:假设
n(s) = n(1) = 1xF~1 = F~L
为n(s) >= F~L
。归纳案例:设
L=1,2,...k-1
,让L=k
成为长度为s
的自定义二进制字符串。如果
k
只包含一个等于s
的数字,这相当于基本情况,我们就完成了。如果
1
包含多个等于s
的数字,请1
为第二次出现的索引,让i
为自定义二进制字符串数字t
。然后我们有s~i ... s~1
。由于n(s) = 1xF~k + n(t) = F~L + n(t)
的长度为t
,因此根据归纳假设,我们会根据需要k-i
。
好的,B会变得更难。我会以归纳的方式证明这一点,因为我觉得它更容易。
基本情况:让
n(s) >= F~L + F~(k-i)>= F~L
L=1
成为长度为1的自定义二进制字符串。根据定义,我们必须拥有s
。因此s=1
。归纳假设:假设n(s)< F〜(L + 1)
n(s) = n(1) = 1xF~1 = 1 < 2 = F~2
L = 1,2,...,K-1`。归纳案例:让
for
和L=k
成为长度为s
的自定义二进制字符串。如果
k
只有一位数等于s
,则相当于基本情况,我们就完成了。如果1
有多个数字等于s
,那么让1
成为第二次出现的索引,i
是由数字t
表示的自定义二进制字符串{1}}。很明显
s~i ... 1
。根据归纳假设,我们知道n(s) = F~L + n(t)
。由于自定义二进制字符串的连续数字不能为n(t) < F~(i+1)
,因此我们还有1
或i <= L-2
,这意味着i+1 <= L-1
因为Fibonacci序列严格增加。全部放在一起:
F~(i+1) <= F~(L-1)
因此
n(s) = F~L + n(t) < F~L + F~(i+1) < F~L + F~(L-1) = F~(L+1).
,视需要。