login

Year-end appeal: Please make a donation to the OEIS Foundation to support ongoing development and maintenance of the OEIS. We are now in our 61st year, we have over 378,000 sequences, and we’ve reached 11,000 citations (which often say “discovered thanks to the OEIS”).

A237502
Number of binary strings of length 2n that contain the ones' complements and the reversals of each of their two halves.
3
2, 6, 8, 16, 26, 46, 72, 116, 184, 288, 434, 646, 980, 1444, 2122, 3066, 4500, 6452, 9362, 13294, 19256, 27280, 39242, 55306, 79546, 111990, 160514, 225466, 323108, 453520, 648970, 909942, 1301932, 1825044, 2609142, 3655406, 5225912, 7320748, 10461942, 14651858
OFFSET
1,1
LINKS
Michael S. Branicky, Python program
EXAMPLE
The two halves of 1000111000 are 10001 and 11000. Their reversals are 10001 and 00011, and their complements are 01110 and 00111 and all are substrings of 1000111000. Since there are 25 other strings of length 2*5 with this property, a(5) = 26.
MATHEMATICA
sQ[L_, {s__}] := MatchQ[L, {___, s, ___}]; a[n_] := Length@ Select[ Tuples[{0, 1}, 2*n], sQ[#, Reverse[Take[#, n]]] && sQ[#, Reverse[Take[#, -n ]]] && sQ[#, 1 - Take[#, n]] && sQ[#, 1 - Take[#, -n]] &]; Array[a, 8]
PROG
(Python) # see link for faster version
from itertools import product as prod
def comp(s): z, o = ord('0'), ord('1'); return s.translate({z:o, o:z})
def ok(s):
a, b = s[len(s)//2:], s[:len(s)//2]
return comp(a) in s and comp(b) in s and a[::-1] in s and b[::-1] in s
def a(n): return 2*sum(ok("0"+"".join(p)) for p in prod("01", repeat=2*n-1))
print([a(n) for n in range(1, 12)]) # Michael S. Branicky, Feb 06 2021
CROSSREFS
Sequence in context: A266074 A191822 A238549 * A279726 A337881 A331974
KEYWORD
nonn
AUTHOR
Giovanni Resta, Feb 08 2014
EXTENSIONS
a(21)-a(40) from Max Alekseyev, Feb 01 2024
STATUS
approved