思路:求第n个数,刚需要对第n-1个数进行统计,按从高到低的顺序,将a个b改写为ab的形式即可。
class Solution:
# @param {int} n the nth
# @return {string} the nth sequence
def countAndSay(self, n):
# Write your code here
L = [1]
for i in range(1, n):
tmp = L[i-1]
tmp_str = str(tmp) + '*'
ans_str = ''
m = 1
for j in range(0, len(tmp_str) - 1):
if tmp_str[j] == tmp_str[j+1]:
m += 1
else:
ans_str += str(m) + tmp_str[j]
m = 1
L.append(int(ans_str))
return str(L[n-1])