login
A137744
Number of different strings of length n obtained from "abcd" by iteratively duplicating any substring.
12
0, 0, 0, 0, 1, 4, 13, 40, 119, 348, 1014, 2966, 8726, 25820, 76823, 229814, 691186, 2089850, 6351448, 19398726, 59525641, 183462778, 567794458, 1764118964
OFFSET
0,6
COMMENTS
See A137743 for more comments.
EXAMPLE
a(4) = # { abcd },
a(5) = # { aabcd, abbcd, abccd, abcdd },
a(6) = # { aaabcd, aabbcd, aabccd, aabcdd, ababcd, abbbcd, abbccd, abbcdd, abcbcd, abcccd, abccdd, abcdcd, abcddd }
PROG
(PARI) A135473(12, 4)
(Python)
def process(s, n, catalog, cache):
....l=len(s)
....if l==n:
........catalog.add(s)
........return
....if s in cache:
........return
....cache.add(s)
....for x in range(l):
........for y in range(x+1, min(x+n-l, l)+1):
............process(s[:y]+s[x:], n, catalog, cache)
def A137744(n):
....catalog=set()
....cache=set()
....process("abcd", n, catalog, cache)
....return len(catalog)
# Bert Dobbelaere, Nov 01 2018
CROSSREFS
KEYWORD
more,nonn
AUTHOR
M. F. Hasler, Feb 10 2008
EXTENSIONS
a(13)-a(19) from Lars Blomberg, Jan 12 2013
a(20)-a(21) from Bert Dobbelaere, Nov 01 2018
a(22)-a(23) from Bert Dobbelaere, Jun 10 2024
STATUS
approved