Сначала я хотел бы ввести последовательность «посмотри и скажи». Это похоже на a = {1, 11, 21, 1211, 111221 ...
Система проверяет предыдущую цифру и считает цифры.
1 = one 1 (so = 11)<br>
11 = two 1 (so = 21)<br>
21 = one 2 one 1 (so = 1211)
Как правило, ни одно число не может превышать 3, так что создание таблицы перевода может уместиться. Но это не семантика, мне это не нравится.
То, что я хочу, - это скрипт, который оценивает заданное значение и возвращает строку, похожую на «смотри и говори».
Однако, чтобы выйти за пределы, я хочу, чтобы он даже оценивал символы, чтобы он мог возвращать 1A2b41
.
Я пытался заставить его работать часами, логика вышла из строя, и в данный момент у меня наступил мозговой простор.
Вот скрипт, который на самом деле не работает (возвращает ложные результаты), но он может дать вам идею, по крайней мере.
def seq(a):
k,last,result,a = 1,'','',str(a)
for i in range(len(a)):
if last==a[i]:k+=1
else:
result = result+str(k)+a[i]
k=1
last = a[i]
return result