Mia figlia aveva il seguente incarico per i compiti di matematica. Immagina sei amici che vivono su una linea, chiamati E, F, G, H, J e K. Le loro posizioni sulla linea sono come indicato (non in scala) di seguito:
Pertanto, F vive cinque unità da E e due unità da G, e così via.
Il tuo compito: crea un programma che identifica un percorso che visita ogni amico esattamente una volta con una lunghezza totale di n unità, prendendo le posizioni degli amici e n come input. Dovrebbe riportare il percorso se lo trova (ad esempio, per la lunghezza 17 potrebbe riportare "E, F, G, H, J, K" e dovrebbe uscire con grazia se non esiste una soluzione. Per quello che vale, ho completato una soluzione non golfata in Mathematica in 271 byte. Sospetto che sia possibile molto più concisa di così.
"[0, 5, 7, 13, 16, 17], 62"
e un output sono "(7, 16, 0, 17, 5, 13)"
ok?
[0, 5, 7, 13, 16, 17]
E62
) in modo che tu possa assicurarti che non sia specificamente codificato in questo caso.