对元素进行排序,以使某些元素不会介于其他元素之间
给定一个整数和一组不同的整数的三元组 找到一种算法,该算法可以找到集合的置换,使得 或正确确定不存在这种排列。非正式地,我们想对数字1到重新排序;每个三元组在表示必须之前出现在新的顺序,但不能之间出现nnnS⊆{(i,j,k)∣1≤i,j,k≤n,i≠j,j≠k,i≠k},S⊆{(i,j,k)∣1≤i,j,k≤n,i≠j,j≠k,i≠k},S \subseteq \{(i, j, k) \mid 1\le i,j,k \le n, i \neq j, j \neq k, i \neq k\},ππ\pi{1,2,…,n}{1,2,…,n}\{1, 2, \dots, n\}(i,j,k)∈S⟹(π(j)<π(i)<π(k)) ∨ (π(i)<π(k)<π(j))(i,j,k)∈S⟹(π(j)<π(i)<π(k)) ∨ (π(i)<π(k)<π(j))(i,j,k) \in S \implies (\pi(j)<\pi(i)<\pi(k)) ~\lor~ (\pi(i)<\pi(k)<\pi(j))nnn(i,j,k)(i,j,k)(i,j,k)SSSiiikkkjjjiii和。kkk 例子1 假设且。然后n=5n=5n=5S={(1,2,3),(2,3,4)}S={(1,2,3),(2,3,4)}S = \{(1,2,3), (2,3,4)\} π=(5,4,3,2,1)π=(5,4,3,2,1)\pi = (5, 4, 3, 2, 1)是不有效的置换,由于,但。(1,2,3)∈S(1,2,3)∈S(1, 2, 3)\in Sπ(1)>π(3)π(1)>π(3)\pi(1) > …