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

 

Logo


Hints
(Greetings from The On-Line Encyclopedia of Integer Sequences!)
A246660 Run Length Transform of factorials. 15
1, 1, 1, 2, 1, 1, 2, 6, 1, 1, 1, 2, 2, 2, 6, 24, 1, 1, 1, 2, 1, 1, 2, 6, 2, 2, 2, 4, 6, 6, 24, 120, 1, 1, 1, 2, 1, 1, 2, 6, 1, 1, 1, 2, 2, 2, 6, 24, 2, 2, 2, 4, 2, 2, 4, 12, 6, 6, 6, 12, 24, 24, 120, 720, 1, 1, 1, 2, 1, 1, 2, 6, 1, 1, 1, 2, 2, 2, 6, 24, 1, 1, 1 (list; graph; refs; listen; history; text; internal format)
OFFSET

0,4

COMMENTS

For the definition of the Run Length Transform see A246595.

Only Jordan-Polya numbers (A001013) are terms of this sequence.

LINKS

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

Index entries for sequences computed with run length transform

FORMULA

a(2^n-1) = n!.

a(0) = 1, a(2n) = a(n), a(2n+1) = a(n) * A007814(2n+2). - Antti Karttunen, Sep 08 2014

a(n) = A112624(A005940(1+n)). - Antti Karttunen, May 29 2017

a(n) = A323505(n) / A323506(n). - Antti Karttunen, Jan 17 2019

MATHEMATICA

Table[Times @@ (Length[#]!&) /@ Select[Split[IntegerDigits[n, 2]], #[[1]] == 1&], {n, 0, 83}] (* Jean-Fran├žois Alcover, Jul 11 2017 *)

PROG

(Sage)

def RLT(f, n):

    return [mul([f(len(d)) for d in Integer(a).binary().split('0') if d != '']) for a in range(n)]

A246660_list = lambda len: RLT(lambda n: factorial(n), len)

A246660_list(88)

(PARI)

A246660(n) = { my(i=0, p=1); while(n>0, if(n%2, i++; p = p * i, i = 0); n = n\2); p; };

for(n=0, 8192, write("b246660.txt", n, " ", A246660(n)));

\\ Antti Karttunen, Sep 08 2014

(Scheme)

;; A stand-alone loop version, like the Pari-program above:

(define (A246660 n) (let loop ((n n) (i 0) (p 1)) (cond ((zero? n) p) ((odd? n) (loop (/ (- n 1) 2) (+ i 1) (* p (+ 1 i)))) (else (loop (/ n 2) 0 p)))))

;; One based on given recurrence, utilizing memoizing definec-macro from my IntSeq-library:

(definec (A246660 n) (cond ((zero? n) 1) ((even? n) (A246660 (/ n 2))) (else (* (A007814 (+ n 1)) (A246660 (/ (- n 1) 2))))))

;; Yet another implementation, using fold:

(define (A246660 n) (fold-left (lambda (a r) (* a (A000142 r))) 1 (bisect (reverse (binexp->runcount1list n)) (- 1 (modulo n 2)))))

(definec (A000142 n) (if (zero? n) 1 (* n (A000142 (- n 1)))))

;; Other functions are as in A227349 - Antti Karttunen, Sep 08 2014

(Python)

from operator import mul

from functools import reduce

from re import split

from math import factorial

def A246660(n):

....return reduce(mul, (factorial(len(d)) for d in split('0+', bin(n)[2:]) if d != '')) if n > 0 else 1 # Chai Wah Wu, Sep 09 2014

CROSSREFS

Cf. A000142, A001013, A007814, A112624, A323505, A323506.

Cf. A003714 (gives the positions of ones).

Run Length Transforms of other sequences: A001316, A071053, A227349, A246588, A246595, A246596, A246661, A246674.

Sequence in context: A025242 A163982 A246661 * A245405 A233543 A156588

Adjacent sequences:  A246657 A246658 A246659 * A246661 A246662 A246663

KEYWORD

nonn,base

AUTHOR

Peter Luschny, Sep 07 2014

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
The OEIS Community | Maintained by The OEIS Foundation Inc.

License Agreements, Terms of Use, Privacy Policy. .

Last modified October 16 11:11 EDT 2019. Contains 328056 sequences. (Running on oeis4.)