<prompt> Seti ya 1, 2, 3, ..., n ina jumla ya vibali vya kipekee vya n!.Kwa kuorodhesha na kuweka lebo kwenye vibali vyote kwa mpangilio, tunapata mlolongo ufuatao wa n 3:1. 1232. 1323. 2134. 2315. 3126. 321Ikitolewa n na k, rudisha mfuatano wa ruhusa kth.Mfano wa 1:Ingizo: n 3, k 3Pato: 213Mfano wa 2:Ingizo: n 4, k 9Pato: 2314Mfano wa 3:Ingizo: n 3, k 1Pato: 123Vikwazo: 1 n 9 1 k n!  <response>: chatudef getPermutationn, k: factorials 1 nambari orodhafungu1, n 1 matokeo kwa i katika safu1, n: factorials.ambatishaviwanda-1 i k - 1 kwa i katika safu n, 0, -1: index k factorialsi - 1 k viwandai - 1 tokeo.ambatishastrnums.popindex rudisha .jiunge matokeomaelezoAlgorithm hutumia nyenzo na orodha ya nambari zinazopatikana kuunda ruhusa ya kth.Kwanza, tunahesabu mapema nyenzo hadi n kwa kutumia kitanzi.Ifuatayo, tunaanzisha safu au orodha ya nambari zinazopatikana, kutoka 1 hadi n.Kisha, tunarudia kutoka n chini hadi 1, tukihesabu fahirisi ya nambari ya sasa katika orodha inayopatikana ili kujumuishwa katika kibali kinachotokana. Tunaweza kuhesabu kama ifuatavyo: index k - 1 factorialsi - 1.Baada ya, tunasasisha thamani ya k hadi: k factorialsi - 1.Katika kila hatua, tunaongeza au kubatilisha nambari iliyochaguliwa kwa matokeo na kuiondoa kwenye orodha ya nambari zinazopatikana.Hatimaye, tunarudisha matokeo kama kamba. 