Pobierz aplikację
Wybierz folder i poproś asystenta o przeczytanie odpowiednich plików przed ich zmianą. Określ cel oraz granice zadania.
Odtwórz permutację leksykograficzną rozmiaru od zera do dziesięciu dla całkowitej rangi. Sprawdź pierwszą i ostatnią rangę oraz pustą permutację, odrzucając wartości logiczne i rangi poza liczbą silniową.
Wybierz folder i poproś asystenta o przeczytanie odpowiednich plików przed ich zmianą. Określ cel oraz granice zadania.
Wybierz zgodny endpoint. Dostępne narzędzia i jakość odpowiedzi zależą od skonfigurowanego modelu i serwera.
Sprawdzaj zmiany i wyniki poleceń. Uruchom testy projektu przed zaakceptowaniem rezultatu; wygenerowany kod nie jest automatycznie przetestowany.
Porównaj rzeczywiste zachowanie z oczekiwanym wynikiem. Jeśli sprawdzenie się nie powiedzie, wyjaśnij przyczynę przed kolejnymi zmianami.
from math import factorial
def unrank_permutation(size, rank):
if type(size) is not int or not 0 <= size <= 10:
raise ValueError("size 0 through 10")
if type(rank) is not int or not 0 <= rank < factorial(size):
raise ValueError("rank outside permutation count")
available, result = list(range(size)), []
for remaining in range(size,0,-1):
index, rank = divmod(rank, factorial(remaining-1))
result.append(available.pop(index))
return resultSprawdź przed zastosowaniem. Sprawdzaj zmiany i wyniki poleceń. Uruchom testy projektu przed zaakceptowaniem rezultatu; wygenerowany kod nie jest automatycznie przetestowany.