Odgovor je svakako nepotpun (ne samo iz razloga koji si naveo), trebalo je samo da ukaže na jedan moguć pristup problemu, onoliko koliko sam na brzinu uočio a što deluje obećavajuće. No, prilaganje koda zaista bi učinilo moju opasku malo kompletnijom.
Do onih brojeva sam došao tako što sam u
Mathematici najpre definisao sledeće pomoćne funkcije:
Code:
str[n_] := Append[Table[{i, i + 1}, {i, 1, n - 1}], {1, n}]
Code:
Inn[l1_, l2_] := If[l2[[#]] == 1, l1[[#]], Reverse[l1[[#]]]] & /@ Range[Length[l1]]
Code:
mogucn[n_] := Inn[str[n], #] & /@ Tuples[{1, 2}, n]
Code:
OK[niz_] := And @@ (niz[[#, 2]] != niz[[# + 1, 1]] & /@ Range[Length[niz] - 1])
Potom se rezultat dobija pokretanjem sledećeg koda:
Code:
For[n = 3, n <= 7, n++,
Print[Length[Select[Flatten[Permutations[#] & /@ mogucn[n], 1], OK[#] &]]]
]
Ljubičice crvena, što si plava kô zelena trava.