login
This site is supported by donations to The OEIS Foundation.

 

Logo


Hints
(Greetings from The On-Line Encyclopedia of Integer Sequences!)
A274647 A variation on Recamán's sequence (A005132): to get a(n), we first try to subtract n from a(n-1): a(n) = a(n-1)-n if positive and not already in the sequence; if not then we try to add n: a(n) = a(n-1)+n if not already in the sequence; if this fails we try to subtract 2n from a(n-1), or to add 2n to a(n-1), or to subtract 3n, or to add 3n, etc., until one of these produces a positive number not already in the sequence. 5
0, 1, 3, 6, 2, 7, 13, 20, 12, 21, 11, 22, 10, 23, 9, 24, 8, 25, 43, 62, 42, 63, 41, 18, 66, 91, 65, 38, 94, 123, 93, 124, 92, 59, 127, 162, 126, 89, 51, 90, 50, 132, 174, 131, 87, 177, 223, 176, 128, 79, 29, 80, 28, 81, 27, 82, 26, 83, 141, 200, 140, 201, 139 (list; graph; refs; listen; history; text; internal format)
OFFSET

0,3

COMMENTS

Is this a permutation of the natural numbers?

After 5.4*10^11 terms, the smallest number which has not appeared is 212. There are 177 numbers under 10000 which have not appeared. - Benjamin Chaffin, Sep 29 2016

LINKS

Antti Karttunen, Table of n, a(n) for n = 0..85000

Index entries for sequences related to Recamán's sequence

FORMULA

A276342(a(n)) = n for all n.

MATHEMATICA

f[s_List] := Block[{a = b = 0, k = 1, l = s[[-1]], n = Length@ s}, While[ If[l > k*n && !MemberQ[s, l - k*n], a = l - k*n]; If[ !MemberQ[s, l + k*n], b = l + k*n; Break[]]; a == b == 0, k++]; Append[s, If[a > 0, a, b]]]; Nest[f, {0}, 70]

(* Robert G. Wilson v, Sep 09 2016 *)

PROG

(Scheme, with defineperm1-macro from Antti Karttunen's IntSeq-library)

(defineperm1 (A274647 n) (if (<= n 1) n (let ((prev (A274647 (- n 1)))) (let loop ((k n)) (cond ((and (> (- prev k) 1) (not-lte? (A276342 (- prev k)) n)) (- prev k)) ((not-lte? (A276342 (+ prev k)) n) (+ prev k)) (else (loop (+ k n))))))))

(define (A276342 n) (A274647 (- n))) ;; This returns inverse values of A274647 from its hidden cache.

;; We consider a > b (i.e. not less than b) also in case a is #f.

;; (Because of the stateful caching system used by defineperm1-macro):

(define (not-lte? a b) (cond ((not (number? a)) #t) (else (> a b))))

;; Antti Karttunen, Sep 04 2016

(Python)

l=[0]

for n in xrange(1, 101):

    i=1

    while True:

        a=l[n - 1]

        x=a - i*n

        if x>0 and not x in l:

            l+=[x, ]

            break

        y=a + i*n

        if y>0 and not y in l:

            l+=[y, ]

            break

        else : i+=1

print l # Indranil Ghosh, Jun 03 2017

CROSSREFS

Cf. A005132, A064389.

Left inverse: A276342 (also right inverse, if this sequence is a permutation of nonnegative integers).

Cf. A276438 (gives k that was used when computing a(n), with sign).

Cf. A274648 (another variant).

Sequence in context: A064387 A064389 A118201 * A113880 A171884 A226940

Adjacent sequences:  A274644 A274645 A274646 * A274648 A274649 A274650

KEYWORD

nonn,nice

AUTHOR

Max Barrentine, Aug 12 2016

STATUS

approved

Lookup | Welcome | Wiki | Register | Music | Plot 2 | Demos | Index | Browse | More | WebCam
Contribute new seq. or comment | Format | Style Sheet | Transforms | Superseeker | Recent | More pages
The OEIS Community | Maintained by The OEIS Foundation Inc.

License Agreements, Terms of Use, Privacy Policy. .

Last modified November 21 08:52 EST 2018. Contains 317430 sequences. (Running on oeis4.)