|
MATHEMATICA
|
avoid[n_, pat_] := Module[{p1 = pat[[1]], p2 = pat[[2]], p3 = pat[[3]], p4 = pat[[4]], p5 = pat[[5]], lseq = {}, i, p,
lpat = Subsets[(n + 1) - Range[n], {Length[pat]}],
psn = Permutations[Range[n]]},
For[i = 1, i <= Length[lpat], i++,
p = lpat[[i]];
AppendTo[lseq, Select[psn, MemberQ[#, {___, p[[p1]], ___, p[[p2]], ___, p[[p3]], ___, p[[p4]], ___, p[[p5]], ___}, {0}] &]];
]; n! - Length[Union[Flatten[lseq, 1]]]];
Table[avoid[n, {1, 2, 4, 5, 3}], {n, 0, 8}] (* Robert Price, Mar 27 2020 *)
|