Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Digits Doublets by tokiojapan55
def find_next(result, numbers, answer):
neighbors = lambda a, b: len([a for a, b in zip(str(a), str(b)) if a != b]) == 1
for i, n in enumerate(numbers):
if neighbors(result[-1], n):
if n != numbers[-1]:
answer = find_next(result + [n], numbers[:i] + numbers[i+1:], answer)
elif len(answer) == 0 or len(result) + 1 < len(answer):
answer = result + [n]
return answer
def checkio(numbers):
return find_next([numbers[0]], numbers[1:], [])
June 2, 2020
Comments: