A368465 Number of even terms in each row of the iterates of the Christmas tree pattern map (A367508).
1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 3, 1, 1, 2, 1, 1, 2, 1, 2, 1, 4, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 3, 1, 1, 1, 3, 1, 3, 1, 5, 1, 1, 2, 1, 1, 2, 1, 2, 1, 4, 1, 1, 2, 1, 1, 2, 1, 2, 1, 4, 1, 1, 2, 1, 2, 1, 4, 1, 2, 1, 4, 1, 4, 1, 6, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 3
Offset: 1
Keywords
Examples
The first 4 tree pattern orders are shown below (left), with the corresponding number of even terms on the right. . Order 1: | 0 1 | 1 | Order 2: | 10 | 1 00 01 11 | 1 | Order 3: | 100 101 | 1 010 110 | 2 000 001 011 111 | 1 | Order 4: | 1010 | 1 1000 1001 1011 | 1 1100 | 1 0100 0101 1101 | 1 0010 0110 1110 | 3 0000 0001 0011 0111 1111 | 1 .
Links
- Paolo Xausa, Table of n, a(n) for n = 1..13494 (first 15 orders).
Programs
-
Mathematica
With[{imax=8},Map[Total,Map[Mod[FromDigits[#]+1,2]&,NestList[Map[Delete[{If[Length[#]>1,Map[#<>"0"&,Rest[#]],Nothing],Join[{#[[1]]<>"0"},Map[#<>"1"&,#]]},0]&],{{"0","1"}},imax-1],{3}],{2}]] (* Generates terms up to order 8 *)
-
Python
from itertools import islice from functools import reduce def uniq(r): return reduce(lambda u, e: u if e in u else u+[e], r, []) def agen(): # generator of terms R = [["0", "1"]] while R: r = R.pop(0) yield sum(b[-1] == '0' for b in r) if len(r) > 1: R.append(uniq([r[k]+"0" for k in range(1, len(r))])) R.append(uniq([r[0]+"0", r[0]+"1"] + [r[k]+"1" for k in range(1, len(r))])) print(list(islice(agen(), 88))) # Michael S. Branicky, Dec 25 2023
Comments