gist: https://gist.github.com/genesislive/5106789
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
__author__ = 'Genesislive'
# http://www.pythonchallenge.com/pc/return/bull.html
# username: huge password:file
# a = [1, 11, 21, 1211, 111221,
# Look-and-say sequence
a = ['1']
sequence = '1'
for i in range(0, 30):
begin = ptr = 0
end = len(sequence)
next_seq = []
while ptr < end:
if sequence[ptr] != sequence[begin]:
next_seq.append(str(ptr - begin) + sequence[begin]) # num char
begin = ptr
ptr += 1 # next char
next_seq.append(str(ptr - begin) + sequence[begin]) # last char
sequence = ''.join(next_seq)
a.append(sequence)
print len(a[-1])
本文提供了一个Python脚本,用于生成看说数列(Look-and-say sequence)。该脚本通过迭代方式生成数列,并展示了如何使用Python进行字符串操作和序列处理。
2237

被折叠的 条评论
为什么被折叠?



