外觀常數(Look-and-say sequence),是指以下特點的整數序列:
1, 11, 21, 1211, 111221, 312211, 13112221, 1113213211, ……
它以數字1開始,序列的第n+1項是對第n項的描述。比如第2項是2個1,所以下一項(第三項)就是21。又比如第5項是111221,描述就是3個1,2個2,1個1, 所以下一項就是312211。
基本介紹
- 中文名:外觀數列
- 外文名:Look-and-say sequence
- 方法:python語言
- 性質:外觀序列有許多有意思的性質
外觀數列的求解,性質,
外觀數列的求解
外觀序列(Look-and-say sequence)的python語言求解:
def look_and_say(member):
while True:
yield member
breakpoints = ([0] + [i for i in range(1, len(member))
if member[i - 1] != member[i]]
+ [len(member)])
groups = [member[breakpoints[i - 1]:breakpoints[i]]
for i in range(1, len(breakpoints))]
member = ''.join(str(len(group)) + group[0] for group in groups)
sequence = look_and_say("1")
for i in range(31):
seq = sequence.next()
print i, seq[:8], len(seq)
性質
外觀序列有許多有意思的性質,比如序列中的第n項L[n]隨著n越來越長,但是除數字1,2,3,其他數字永遠不會出現。另一個有意思的性質是由英國數學家Conway於1987年發現的。即相鄰兩數的比值L[n]/L[n-1],隨著n的增大越來越接近一個固定的數。當n趨於無窮大時,相鄰兩數的比值為一個常數。Conway將這個數記為希臘字母λ(lim_{n->∞} L[n]/L[n-1] = λ),λ ≈1.303577。並且該數還是下面這個71次方程的唯一實數解。
x^71 - x^69 - 2*x^68 - x^67 + 2*x^66 + 2*x^65 + x^64 - x^63 - x^62 - x^61 - x^60 - x^59 + 2*x^58 + 5*x^57 + 3*x^56 - 2*x^55 - 10*x^54 - 3*x^53 - 2*x^52 + 6*x^51 + 6*x^50 + x^49 + 9*x^48 - 3*x^47 - 7*x^46 - 8*x^45 - 8*x^44 + 10*x^43 + 6*x^42 + 8*x^41 - 5*x^40 - 12*x^39 + 7*x^38 - 7*x^37 + 7*x^36 + x^35 - 3*x^34 + 10*x^33 + x^32 - 6*x^31 - 2*x^30 - 10*x^29 - 3*x^28 + 2*x^27 + 9*x^26 - 3*x^25 + 14*x^24 - 8*x^23 - 7*x^21 + 9*x^20 + 3*x^19 - 4*x^18 - 10*x^17 - 7*x^16 + 12*x^15 + 7*x^14 + 2*x^13 - 12*x^12 - 4*x^11 - 2*x^10 + 5*x^9 + x^7 - 7*x^6 + 7*x^5 - 4*x^4 + 12*x^3 - 6*x^2 + 3*x - 6 = 0