Mapeo de "int" al valor de permutación correspondiente?

Me encontré con estopregunta esta mañana.

Básicamente, esa pregunta se trata de datos que tienen que crear permutaciones para 6 valores; cada uno va de 1 a 38.

Entonces, la primera permutación sería

1 1 1 1 1 1      [ permutation 1 ]
1 1 1 1 1 2      [ permutation 2 ]
1 1 1 1 1 3...   [ permutation 3 ]

para terminar mucho más tarde con

38 38 38 38 38 38 [ permutation 38^^6 ]

La salida se crea simplemente mediante 6 bucles anidados, cada uno contando de 1 a 38; y dentro del bucle más interno, imprime los 6 contadores de bucle.

Ahora me pregunto sobre las matemáticas detrás de eso; y por curiosidad: ¿cuál sería la "función" que

calcula el "índice de permutación", dada una permutación 1 2 3 4 5 6Probablemente más interesante: eso toma un "índice", como 102382; y me dice la salida de permutación correspondiente

¿Alguna idea de alguien?

Respuestas a la pregunta(1)

Su respuesta a la pregunta