OFFSET
1,3
LINKS
Robert Israel, Table of n, a(n) for n = 1..10000
FORMULA
a(1)=0, a(2)=1 and for k>1: a(2*k-1) = a(2*k-2)+1, a(2*k) = 2*a(k+1). - Reinhard Zumkeller, Jan 09 2002, corrected by Robert Israel, Mar 31 2017
For n > 0, a(n) = 1/2 * (4n - 3 - A006257(n-1)). - Ralf Stephan, Sep 16 2003
a(1) = 0, a(2) = 1, a(2^m+k+2) = 2^(m+1)+k, m >= 0, 0 <= k < 2^m. - Yosu Yurramendi, Jul 30 2016
a(2^m+k) = A004760(2^m+k) - 2^m, m >= 0, 0 <= k < 2^m. - Yosu Yurramendi, Aug 08 2016
G.f. g(x) satisfies g(x) = 2*(1+x)*g(x^2)/x^2 - x^2*(1-x^2-x^3)/(1-x^2). - Robert Israel, Mar 31 2017
MAPLE
f:= proc(n) option remember; if n::odd then procname(n-1)+1 else 2*procname(n/2+1) fi
end proc:
f(1):= 0: f(2):= 1:
map(f, [$1..100]); # Robert Israel, Mar 31 2017
MATHEMATICA
Select[Range[0, 140], # <= 2 || Take[IntegerDigits[#, 2], 2] != {1, 1} &] (* Michael De Vlieger, Aug 03 2016 *)
PROG
(PARI) is(n)=n^2==n || !binary(n)[2] \\ Charles R Greathouse IV, Mar 07 2013
(PARI) a(n) = if(n<=2, n-1, n-=2; n + 1<<logint(n, 2)); \\ Kevin Ryde, Apr 14 2021
(R)
maxrow <- 8 # by choice
b01 <- 1
for(m in 0:maxrow){
b01 <- c(b01, rep(1, 2^(m+1))); b01[2^(m+1):(2^(m+1)+2^m-1)] <- 0
}
(a <- c(0, 1, which(b01 == 0)))
# Yosu Yurramendi, Mar 30 2017
(Python)
def A004761(n): return m+(1<<m.bit_length()-1) if (m:=n-2) else n-1 # Chai Wah Wu, Jul 26 2023
CROSSREFS
KEYWORD
nonn,easy,base
AUTHOR
STATUS
approved