A343856 Irregular table read by rows; the first row is [1]; to obtain the next row, replace each odd-indexed term u with (u, u), and each even-indexed term v with (2*v).
1, 1, 1, 1, 1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 4, 2, 2, 1, 1, 2, 2, 2, 4, 2, 2, 8, 2, 2, 4, 1, 1, 2, 2, 2, 4, 2, 2, 8, 2, 2, 4, 8, 8, 4, 2, 2, 8, 1, 1, 2, 2, 2, 4, 2, 2, 8, 2, 2, 4, 8, 8, 4, 2, 2, 8, 8, 8, 16, 4, 4, 4, 2, 2, 16, 1, 1, 2, 2, 2, 4, 2, 2, 8, 2, 2, 4, 8, 8, 4, 2, 2, 8, 8, 8, 16, 4, 4, 4, 2, 2, 16, 8, 8, 16, 16, 16, 8, 4, 4, 8, 2, 2, 4, 16, 16
Offset: 1
Examples
Table begins: 1: [1] 2: [1, 1] 3: [1, 1, 2] 4: [1, 1, 2, 2, 2] 5: [1, 1, 2, 2, 2, 4, 2, 2] 6: [1, 1, 2, 2, 2, 4, 2, 2, 8, 2, 2, 4] 7: [1, 1, 2, 2, 2, 4, 2, 2, 8, 2, 2, 4, 8, 8, 4, 2, 2, 8]
Programs
-
PARI
{ a = r = [1]; for (n=1, 8, i = 0; a=concat(a, r = concat(apply (v -> if (i++%2, [v,v], [2*v]), r)))); print (a) }
-
Python
def auptorow(rows): alst, row, newrow = [1], [1], [] for r in range(2, rows+1): for i, v in enumerate(row, start=1): newrow += [v, v] if i%2 else [2*v] alst, row, newrow = alst + newrow, newrow, [] return alst print(auptorow(9)) # Michael S. Branicky, May 04 2021
Comments