Учитывая некоторое положительное целое число генерируют все нарушения объектов.
Детали
- Нарушение - это перестановка без фиксированной точки. (Это означает, что в каждом номере расстройства не могу быть в записи).
- Вывод должен состоять из отклонений чисел (или альтернативно ).
- Вы можете альтернативно всегда печатать из расстройств (или ( п - 1 , п - 2 , ... , 1 , 0 ) , соответственно) , но вы должны указать так.
- Выходные данные должны быть детерминированными, то есть всякий раз, когда программа вызывается с некоторым заданным качестве входных данных, выходные данные должны быть одинаковыми (что подразумевает, что порядок неисправностей должен оставаться неизменным), и полный вывод должен быть выполнен в течение ограниченное количество времени каждый раз (этого недостаточно для вероятности 1).
- Для некоторого заданного вы можете сгенерировать все отклонения или, альтернативно, вы можете взять другое целое число которое служит индексом, и вывести отклонение (в выбранном вами порядке).
Примеры
Обратите внимание, что порядок неисправностей не должен быть таким, как указано здесь:
n=2: (2,1)
n=3: (2,3,1),(3,1,2)
n=4: (2,1,4,3),(2,3,4,1),(2,4,1,3), (3,1,4,2),(3,4,1,2),(3,4,2,1), (4,1,2,3),(4,3,1,2),(4,3,2,1)
OEIS A000166 подсчитывает количество неисправностей.