Подключение
Базовый URL, учётные данные и доступный сервер.
Разместите примеры рангов рядом с вызовами, чувствительными к порядку, и проверьте выбор оставшегося элемента в каждом факториальном блоке при явно заданной внешней индексации.
Базовый URL, учётные данные и доступный сервер.
Модель, которую предоставляет настроенный endpoint.
Объём контекста и поддержка инструментов определяются моделью и сервером.
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 result