Niech oznacza zbiór a C (n, k) oznacza zbiór wszystkich kombinacji elementów z bez powtórzeń. Niech będzie liczbą w . Mówimy, że permutacja zestawu pozwala uniknąć jeśli nie ma k-krotki liczb całkowitych taki, że { 1 , . . . , n } k [ n ] p = p 1 p 2 . . . p k k C ( n , k ) π : [ n ] → [ n ] [ n ] p i 1 < i 2 < . . . < i k π (
Na przykład, jeśli to permutacja 12453 unika 134 jako podsekwencji, podczas gdy permutacja \ mathbf {1} 2 \ mathbf {3} 5 \ mathbf {4} nie.12453 134 1 2 3 5 4
Pytanie: Niech będzie stałą. Biorąc pod uwagę zestaw od -tuples, znaleźć permutacji , która pozwala uniknąć każdej -tuple w .
- Czy istnieje algorytm tego problemu, który jest wielomianowy w a ? Tutaj jest podany unarnie. Algorytm działający w czasie byłby w porządku.
- Czy jest to problem NP-zupełny?
Wszelkie odniesienia do tego problemu lub sugestie algorytmów są mile widziane. Zauważ, że zdefiniowane powyżej pojęcie unikania permutacji nie jest takie samo, jak pojęcie unikania permutacji, w którym ważny jest tylko względny porządek elementów i który wydaje się być dobrze zbadany w kombinatoryce.
źródło
Odpowiedzi:
Jest NP-kompletny dla przez redukcję od międzyczasie . W przypadku problemu pośredniczącego, jeden otrzymuje elementów, które mają być całkowicie uporządkowane, a ograniczenia dotyczące niektórych potrójnych elementów zmuszają jeden element potrójnego do umieszczenia między pozostałymi dwoma. W twoim problemie to samo ograniczenie można wymusić, zakazując wszystkich podsekwencji trzech elementów, które nie umieszczają środkowego elementu na środku. Ale wiadomo, że wzajemność jest NP-zupełna: patrz J. Opatrny, Problem z całkowitym uporządkowaniem, SIAM J. Comput. , 8 (1979), s. 111–114.k=3 n
źródło