A080116 Characteristic function of A014486. a(n) = 1 if n's binary expansion is totally balanced, otherwise zero.
1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
Offset: 0
Examples
0 stands for an empty parenthesization, thus a(0) = 1. 2 has binary expansion "10", which corresponds with "()", thus a(2) = 1. 3 has binary expansion "11", but "((" is not a well-formed parenthesization, thus a(3) = 0. 10 has binary expansion "1010", corresponding with a well-formed parenthesization "()()", thus a(10) = 1. 38 has binary expansion "100110", but "())(()" is not a well-formed parenthesization, thus a(38) = 0.
Links
Programs
-
Maple
A080116 := proc(n) local c,lev; lev := 0; c := n; while(c > 0) do lev := lev + (-1)^c; c := floor(c/2); if(lev < 0) then RETURN(0); fi; od; if(lev > 0) then RETURN(0); else RETURN(1); fi; end;
-
Mathematica
A080116[n_] := (lev = 0; c = n; While[c > 0, lev = lev + (-1)^c; c = Floor[c/2]; If[lev < 0, Return[0]]]; If[lev > 0, Return[0], Return[1]]); Table[A080116[n], {n, 0, 104}] (* Jean-François Alcover, Jul 24 2013, translated from Maple *)
-
PARI
A080116(n) = { my(k=0); while(n, k += (-1)^n; n >>= 1; if(k<0, return(0))); (0==k); }; \\ Antti Karttunen, Aug 23 2019
-
Sage
def A080116(n) : lev = 0 while n > 0 : lev += (-1)^n if lev < 0: return 0 n = n//2 return 0 if lev > 0 else 1 [A080116(n) for n in (0..104)] # Peter Luschny, Aug 09 2012
Extensions
Examples added by Antti Karttunen, Aug 23 2019
Comments