Дано целое число и множество триплетов различных целых чисел найдите алгоритм, который либо находит перестановку множества такую, что или правильно определяет, что такой перестановки не существует. Менее формально мы хотим изменить порядок номеров от 1 до ; каждая тройка в указывает, что должен появляться перед в новом порядке, но не должен появляться между
Пример 1
Предположим, что и . затем
является не допустимым перестановок, так , а .
является не допустимым перестановок, так , а .
является допустимой перестановкой.
Пример 2
Если и , допустимая перестановка отсутствует. Точно так же нет действительной перестановки, если и ( Я думаю, возможно, сделал ошибку здесь).
Бонус: Какие свойства определяют, существует ли возможное решение?