Загрузка данных


cache = {}

def H(num, fr, to, aux):
  key = (num, fr, to, aux)
  if key in cache:
    return cache[key]

  if num == 1:
    return f' {fr} -> {to},'
  else:
    s = H(num - 1, fr, aux, to)
    s = s + f' {fr} -> {to},'
    s = s + H(num - 1, aux, to, fr)
    cache[key] = s
    return s

if __name__ == '__main__':
  print(H(25, 1, 2, 3))