%I #25 Nov 20 2021 20:41:54
%S 0,0,2,38,9782,641083190,2753431335706502966,
%T 50791843174310108512166439539235563318,
%U 17283568615631356151658578642396687258566665947274335391075779120894446085942
%N a(n) is the previous term in binary with 0's and 1's put alternatingly before each digit, starting with 0.
%C The next term is too large to include.
%C The actual sequence in binary is 0, 00, 0010, 00100110, ... The 0s at the start of each term are required for the sequence to work.
%e a(2) = 0010;
%e a(3) = (0010 + 0101 -> 00100110);
%e a(4) = (00100110 + 01010101 = 0010011000110110).
%e Full explanation:
%e Say we have the term 0010.
%e We get an equal length binary number of alternating 0s and 1s.
%e In this case it would be 0101, and we interlace them like so:
%e 0 1 0 1
%e 0010 + 0101 -> 0 0 1 0 -> 00100110
%o (Python)
%o def combine(a,b):
%o c = ''
%o for i in range(max(len(a),len(b))*2):
%o if i%2 == 0:
%o if len(a) > i/2:
%o c += (a[int(i/2)])
%o else:
%o if len(b) > i/2:
%o c += (b[int(i/2)])
%o return c
%o x = '0'
%o while True:
%o x = combine(combine(len(x)*'0',len(x)*'1')[:len(x)],x)
%o (Python)
%o from itertools import islice
%o def A348162(): # generator of terms
%o s = '0'
%o while True:
%o yield int(s,2)
%o s = ''.join(x+y for x, y in zip('01'*((len(s)+1)//2),s))
%o A348162_list = list(islice(A348162(),9)) # _Chai Wah Wu_, Nov 19 2021
%o (PARI) a(n) = my(ret=0,s=1); for(i=2,n, ret += 1<<s + ret<<(s<<=1)); ret; \\ _Kevin Ryde_, Nov 19 2021
%Y Cf. A014707 (bits of terms), A337580.
%K nonn,base
%O 0,3
%A _Edward Green_, Oct 03 2021