

A242520


Number of cyclic arrangements of S={1,2,...,2n} such that the difference between any two neighbors is 3^k for some k=0,1,2,...


17



1, 1, 2, 3, 27, 165, 676, 3584, 19108, 80754, 386776, 1807342, 8218582, 114618650, 1410831012, 12144300991, 126350575684
(list;
graph;
refs;
listen;
history;
text;
internal format)



OFFSET

1,3


COMMENTS

a(n)=NPC(2n;S;P) is the count of all neighborproperty cycles for a specific set S of 2n elements and a specific pairproperty P. For more details, see the link and A242519.
In this particular instance of NPC(n;S;P), all the terms with odd cycle lengths are necessarily zero.


LINKS



EXAMPLE

The two such cycles of length n=6 are:
C_1={1,2,3,6,5,4}, C_2={1,2,5,6,3,4}.
The first and last of the 27 such cycles of length n=10 are:
C_1={1,2,3,4,5,6,7,8,9,10}, C_27={1,4,7,8,5,2,3,6,9,10}.


MATHEMATICA

A242520[n_] := Count[Map[lpf, Map[j1f, Permutations[Range[2, 2 n]]]], 0]/2;
j1f[x_] := Join[{1}, x, {1}];
lpf[x_] := Length[Select[Abs[Differences[x]], ! MemberQ[t, #] &]];
t = Table[3^k, {k, 0, 10}];
Join[{1}, Table[A242520[n], {n, 2, 5}]]
(* OR, a less simple, but more efficient implementation. *)
A242520[n_, perm_, remain_] := Module[{opt, lr, i, new},
If[remain == {},
If[MemberQ[t, Abs[First[perm]  Last[perm]]], ct++];
Return[ct],
opt = remain; lr = Length[remain];
For[i = 1, i <= lr, i++,
new = First[opt]; opt = Rest[opt];
If[! MemberQ[t, Abs[Last[perm]  new]], Continue[]];
Complement[Range[2, 2 n], perm, {new}]];
];
Return[ct];
];
];
t = Table[3^k, {k, 0, 10}];
Join[{1}, Table[ct = 0; A242520[n, {1}, Range[2, 2 n]]/2, {n, 2, 8}]] (* Robert Price, Oct 22 2018 *)


PROG

(C++) See the link.


CROSSREFS

Cf. A242519, A242521, A242522, A242523, A242524, A242525, A242526, A242527, A242528, A242529, A242530, A242531, A242532, A242533, A242534.


KEYWORD

nonn,hard,more


AUTHOR



EXTENSIONS



STATUS

approved



