cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

Showing 1-5 of 5 results.

A002033 Number of perfect partitions of n.

Original entry on oeis.org

1, 1, 1, 2, 1, 3, 1, 4, 2, 3, 1, 8, 1, 3, 3, 8, 1, 8, 1, 8, 3, 3, 1, 20, 2, 3, 4, 8, 1, 13, 1, 16, 3, 3, 3, 26, 1, 3, 3, 20, 1, 13, 1, 8, 8, 3, 1, 48, 2, 8, 3, 8, 1, 20, 3, 20, 3, 3, 1, 44, 1, 3, 8, 32, 3, 13, 1, 8, 3, 13, 1, 76, 1, 3, 8, 8, 3, 13, 1, 48, 8, 3, 1, 44, 3, 3, 3, 20, 1, 44, 3, 8, 3, 3, 3, 112
Offset: 0

Views

Author

Keywords

Comments

A perfect partition of n is one which contains just one partition of every number less than n when repeated parts are regarded as indistinguishable. Thus 1^n is a perfect partition for every n; and for n = 7, 4 1^3, 4 2 1, 2^3 1 and 1^7 are all perfect partitions. [Riordan]
Also number of ordered factorizations of n+1, see A074206.
Also number of gozinta chains from 1 to n (see A034776). - David W. Wilson
a(n) is the permanent of the n X n matrix with (i,j) entry = 1 if j|i+1 and = 0 otherwise. For n=3 the matrix is {{1, 1, 0}, {1, 0, 1}, {1, 1, 0}} with permanent = 2. - David Callan, Oct 19 2005
Appears to be the number of permutations that contribute to the determinant that gives the Moebius function. Verified up to a(9). - Mats Granvik, Sep 13 2008
Dirichlet inverse of A153881 (assuming offset 1). - Mats Granvik, Jan 03 2009
Equals row sums of triangle A176917. - Gary W. Adamson, Apr 28 2010
A partition is perfect iff it is complete (A126796) and knapsack (A108917). - Gus Wiseman, Jun 22 2016
a(n) is also the number of series-reduced planted achiral trees with n + 1 unlabeled leaves, where a rooted tree is series-reduced if all terminal subtrees have at least two branches, and achiral if all branches directly under any given node are equal. Also Moebius transform of A067824. - Gus Wiseman, Jul 13 2018

Examples

			n=0: 1 (the empty partition)
n=1: 1 (1)
n=2: 1 (11)
n=3: 2 (21, 111)
n=4: 1 (1111)
n=5: 3 (311, 221, 11111)
n=6: 1 (111111)
n=7: 4 (4111, 421, 2221, 1111111)
From _Gus Wiseman_, Jul 13 2018: (Start)
The a(11) = 8 series-reduced planted achiral trees with 12 unlabeled leaves:
  (oooooooooooo)
  ((oooooo)(oooooo))
  ((oooo)(oooo)(oooo))
  ((ooo)(ooo)(ooo)(ooo))
  ((oo)(oo)(oo)(oo)(oo)(oo))
  (((ooo)(ooo))((ooo)(ooo)))
  (((oo)(oo)(oo))((oo)(oo)(oo)))
  (((oo)(oo))((oo)(oo))((oo)(oo)))
(End)
		

References

  • L. Comtet, Advanced Combinatorics, Reidel, 1974, p. 126, see #27.
  • R. Honsberger, Mathematical Gems III, M.A.A., 1985, p. 141.
  • D. E. Knuth, The Art of Computer Programming, Pre-Fasc. 3b, Sect. 7.2.1.5, no. 67, p. 25.
  • P. A. MacMahon, The theory of perfect partitions and the compositions of multipartite numbers, Messenger Math., 20 (1891), 103-119.
  • J. Riordan, An Introduction to Combinatorial Analysis, Wiley, 1958, pp. 123-124.
  • N. J. A. Sloane, A Handbook of Integer Sequences, Academic Press, 1973 (includes this sequence).
  • N. J. A. Sloane and Simon Plouffe, The Encyclopedia of Integer Sequences, Academic Press, 1995 (includes this sequence).

Crossrefs

Same as A074206, up to the offset and initial term there.
Cf. A176917.
For parity see A008966.

Programs

  • Maple
    a := array(1..150): for k from 1 to 150 do a[k] := 0 od: a[1] := 1: for j from 2 to 150 do for m from 1 to j-1 do if j mod m = 0 then a[j] := a[j]+a[m] fi: od: od: for k from 1 to 150 do printf(`%d,`,a[k]) od: # James Sellers, Dec 07 2000
    # alternative
    A002033 := proc(n)
        option remember;
        local a;
        if n <= 2 then
            return 1;
        else
            a := 0 ;
            for i from 0 to n-1 do
                if modp(n+1,i+1) = 0 then
                    a := a+procname(i);
                end if;
            end do:
        end if;
        a ;
    end proc: # R. J. Mathar, May 25 2017
  • Mathematica
    a[0] = 1; a[1] = 1; a[n_] := a[n] = a /@ Most[Divisors[n]] // Total; a /@ Range[96]  (* Jean-François Alcover, Apr 06 2011, updated Sep 23 2014. NOTE: This produces A074206(n) = a(n-1). - M. F. Hasler, Oct 12 2018 *)
  • PARI
    A002033(n) = if(n,sumdiv(n+1,i,if(i<=n,A002033(i-1))),1) \\ Michael B. Porter, Nov 01 2009, corrected by M. F. Hasler, Oct 12 2018
    
  • Python
    from functools import lru_cache
    from sympy import divisors
    @lru_cache(maxsize=None)
    def A002033(n):
        if n <= 1:
            return 1
        return sum(A002033(i-1) for i in divisors(n+1,generator=True) if i <= n) # Chai Wah Wu, Jan 12 2022

Formula

From David Wasserman, Nov 14 2006: (Start)
a(n-1) = Sum_{i|d, i < n} a(i-1).
a(p^k-1) = 2^(k-1).
a(n-1) = A067824(n)/2 for n > 1.
a(A122408(n)-1) = A122408(n)/2. (End)
a(A025487(n)-1) = A050324(n). - R. J. Mathar, May 26 2017
a(n) = (A253249(n+1)+1)/4, n > 0. - Geoffrey Critzer, Aug 19 2020

Extensions

Edited by M. F. Hasler, Oct 12 2018

A074206 Kalmár's [Kalmar's] problem: number of ordered factorizations of n.

Original entry on oeis.org

0, 1, 1, 1, 2, 1, 3, 1, 4, 2, 3, 1, 8, 1, 3, 3, 8, 1, 8, 1, 8, 3, 3, 1, 20, 2, 3, 4, 8, 1, 13, 1, 16, 3, 3, 3, 26, 1, 3, 3, 20, 1, 13, 1, 8, 8, 3, 1, 48, 2, 8, 3, 8, 1, 20, 3, 20, 3, 3, 1, 44, 1, 3, 8, 32, 3, 13, 1, 8, 3, 13, 1, 76, 1, 3, 8, 8, 3, 13, 1, 48, 8, 3, 1, 44, 3, 3, 3, 20, 1, 44, 3, 8, 3, 3, 3, 112
Offset: 0

Views

Author

N. J. A. Sloane, Apr 29 2003

Keywords

Comments

a(0)=0, a(1)=1; thereafter a(n) is the number of ordered factorizations of n as a product of integers greater than 1.
Kalmár (1931) seems to be the earliest reference that mentions this sequence (as opposed to A002033). - N. J. A. Sloane, May 05 2016
a(n) is the permanent of the n-1 X n-1 matrix A with (i,j) entry = 1 if j|i+1 and = 0 otherwise. This is because ordered factorizations correspond to nonzero elementary products in the permanent. For example, with n=6, 3*2 -> 1,3,6 [partial products] -> 6,3,1 [reverse list] -> (6,3)(3,1) [partition into pairs with offset 1] -> (5,3)(2,1) [decrement first entry] -> (5,3)(2,1)(1,2)(3,4)(4,5) [append pairs (i,i+1) to get a permutation] -> elementary product A(1,2)A(2,1)A(3,4)A(4,5)A(5,3). - David Callan, Oct 19 2005
This sequence is important in describing the amount of energy in all wave structures in the Universe according to harmonics theory. - Ray Tomes (ray(AT)tomes.biz), Jul 22 2007
a(n) appears to be the number of permutation matrices contributing to the Moebius function. See A008683 for more information. Also a(n) appears to be the Moebius transform of A067824. Furthermore it appears that except for the first term a(n)=A067824(n)*(1/2). Are there other sequences such that when the Moebius transform is applied, the new sequence is also a constant factor times the starting sequence? - Mats Granvik, Jan 01 2009
Numbers divisible by n distinct primes appear to have ordered factorization values that can be found in an n-dimensional summatory Pascal triangle. For example, the ordered factorization values for numbers divisible by two distinct primes can be found in table A059576. - Mats Granvik, Sep 06 2009
Inverse Mobius transform of A174725 and also except for the first term, inverse Mobius transform of A174726. - Mats Granvik, Mar 28 2010
a(n) is a lower bound on the worst-case number of solutions to the probed partial digest problem for n fragments of DNA; see the Newberg & Naor reference, below. - Lee A. Newberg, Aug 02 2011
All integers greater than 1 are perfect numbers over this sequence (for definition of A-perfect numbers, see comment to A175522). - Vladimir Shevelev, Aug 03 2011
If n is squarefree, then a(n) = A000670(A001221(n)) = A000670(A001222(n)). - Vladimir Shevelev and Franklin T. Adams-Watters, Aug 05 2011
A034776 lists the values taken by this sequence. - Robert G. Wilson v, Jun 02 2012
From Gus Wiseman, Aug 25 2020: (Start)
Also the number of strict chains of divisors from n to 1. For example, the a(n) chains for n = 1, 2, 4, 6, 8, 12, 30 are:
1 2/1 4/1 6/1 8/1 12/1 30/1
4/2/1 6/2/1 8/2/1 12/2/1 30/2/1
6/3/1 8/4/1 12/3/1 30/3/1
8/4/2/1 12/4/1 30/5/1
12/6/1 30/6/1
12/4/2/1 30/10/1
12/6/2/1 30/15/1
12/6/3/1 30/6/2/1
30/6/3/1
30/10/2/1
30/10/5/1
30/15/3/1
30/15/5/1
(End)
a(n) is also the number of ways to tile a strip of length log(n) with tiles having lengths {log(k) : k>=2}. - David Bevan, Jan 07 2025

Examples

			G.f. = x + x^2 + x^3 + 2*x^4 + x^5 + 3*x^6 + x^7 + 4*x^8 + 2*x^9 + 3*x^10 + ...
Number of ordered factorizations of 8 is 4: 8 = 2*4 = 4*2 = 2*2*2.
		

References

  • L. Comtet, Advanced Combinatorics, Reidel, 1974, p. 126, see #27.
  • R. Honsberger, Mathematical Gems III, M.A.A., 1985, p. 141.
  • Kalmár, Laszlo, A "factorisatio numerorum" problemajarol [Hungarian], Matemat. Fizik. Lapok, 38 (1931), 1-15.
  • J. Riordan, An Introduction to Combinatorial Analysis, Wiley, 1958, p. 124.

Crossrefs

Apart from initial term, same as A002033.
a(A002110) = A000670, row sums of A251683.
A173382 (and A025523) gives partial sums.
A124433 has these as unsigned row sums.
A334996 has these as row sums.
A001055 counts factorizations.
A001222 counts prime factors with multiplicity.
A008480 counts ordered prime factorizations.
A067824 counts strict chains of divisors starting with n.
A122651 counts strict chains of divisors summing to n.
A253249 counts strict chains of divisors.

Programs

  • Haskell
    a074206 n | n <= 1 = n
    | otherwise = 1 + (sum $ map (a074206 . (div n)) $
    tail $ a027751_row n)
    -- Reinhard Zumkeller, Oct 01 2012
    
  • Maple
    a := array(1..150): for k from 1 to 150 do a[k] := 0 od: a[1] := 1: for j from 2 to 150 do for m from 1 to j-1 do if j mod m = 0 then a[j] := a[j]+a[m] fi: od: od: for k from 1 to 150 do printf(`%d,`,a[k]) od: # James Sellers, Dec 07 2000
    A074206:= proc(n) option remember; if n > 1 then `+`(op(apply(A074206, numtheory[divisors](n)[1..-2]))) else n fi end: # M. F. Hasler, Oct 12 2018
  • Mathematica
    a[0] = 0; a[1] = 1; a[n_] := a[n] = a /@ Most[Divisors[n]] // Total; a /@ Range[20000] (* N. J. A. Sloane, May 04 2016, based on program in A002033 *)
    ccc[n_]:=Switch[n,0,{},1,{{1}},,Join@@Table[Prepend[#,n]&/@ccc[d],{d,Most[Divisors[n]]}]]; Table[Length[ccc[n]],{n,0,100}] (* _Gus Wiseman, Aug 25 2020 *)
  • PARI
    A=vector(100);A[1]=1; for(n=2,#A,A[n]=1+sumdiv(n,d,A[d])); A/=2; A[1]=1; concat(0,A) \\ Charles R Greathouse IV, Nov 20 2012
    
  • PARI
    {a(n) = if( n<2, n>0, my(A = divisors(n)); sum(k=1, #A-1, a(A[k])))}; /* Michael Somos, Dec 26 2016 */
    
  • PARI
    A074206(n)=if(n>1, sumdiv(n, i, if(iA074206(i))),n) \\ M. F. Hasler, Oct 12 2018
    
  • PARI
    A74206=[1]; A074206(n)={if(#A74206A074206(i)))} \\ Use memoization for computing many values. - M. F. Hasler, Oct 12 2018
    
  • PARI
    first(n) = {my(res = vector(n, i, 1)); for(i = 2, n, for(j = 2, n \ i, res[i*j] += res[i])); concat(0, res)} \\ David A. Corneth, Oct 13 2018
    
  • PARI
    first(n) = {my(res = vector(n, i, 1)); for(i = 2, n, d = divisors(i); res[i] += sum(j = 1, #d-1, res[d[j]])); concat(0, res)} \\ somewhat faster than progs above for finding first terms of n. \\ David A. Corneth, Oct 12 2018
    
  • PARI
    a(n)={if(!n, 0, my(sig=factor(n)[,2], m=vecsum(sig)); sum(k=0, m, prod(i=1, #sig, binomial(sig[i]+k-1, k-1))*sum(r=k, m, binomial(r,k)*(-1)^(r-k))))} \\ Andrew Howroyd, Aug 30 2020
    
  • Python
    from math import prod
    from functools import lru_cache
    from sympy import divisors, factorint, prime
    @lru_cache(maxsize=None)
    def A074206(n): return sum(A074206(d) for d in divisors(prod(prime(i+1)**e for i,e in enumerate(sorted(factorint(n).values(),reverse=True))),generator=True,proper=True)) if n > 1 else n # Chai Wah Wu, Sep 16 2022
  • SageMath
    @cached_function
    def minus_mu(n):
        if n < 2: return n
        return sum(minus_mu(d) for d in divisors(n)[:-1])
    # Note that changing the sign of the sum gives the Möbius function A008683.
    print([minus_mu(n) for n in (0..96)]) # Peter Luschny, Dec 26 2016
    

Formula

With different offset: a(n) = sum of all a(i) such that i divides n and i < n. - Clark Kimberling
a(p^k) = 2^(k-1) if k>0 and p is a prime.
Dirichlet g.f.: 1/(2-zeta(s)). - Herbert S. Wilf, Apr 29 2003
a(n) = A067824(n)/2 for n>1; a(A122408(n)) = A122408(n)/2. - Reinhard Zumkeller, Sep 03 2006
If p,q,r,... are distinct primes, then a(p*q)=3, a(p^2*q)=8, a(p*q*r)=13, a(p^3*q)=20, etc. - Vladimir Shevelev, Aug 03 2011 [corrected by Charles R Greathouse IV, Jun 02 2012]
a(0) = 0, a(1) = 1; a(n) = [x^n] Sum_{k=1..n-1} a(k)*x^k/(1 - x^k). - Ilya Gutkovskiy, Dec 11 2017
a(n) = a(A046523(n)); a(A025487(n)) = A050324(n): a(n) depends only on the nonzero exponents in the prime factorization of n, more precisely prime signature of n, cf. A124010 and A320390. - M. F. Hasler, Oct 12 2018
a(n) = A000670(A001221(n)) for squarefree n. In particular a(A002110(n)) = A000670(n). - Amiram Eldar, May 13 2019
a(n) = A050369(n)/n, for n>=1. - Ridouane Oudra, Aug 31 2019
a(n) = A361665(A181819(n)). - Pontus von Brömssen, Mar 25 2023
From Ridouane Oudra, Nov 02 2023: (Start)
If p,q are distinct primes, and n,m>0 then we have:
a(p^n*q^m) = Sum_{k=0..min(n,m)} 2^(n+m-k-1)*binomial(n,k)*binomial(m,k);
More generally: let tau[k](n) denote the number of ordered factorizations of n as a product of k terms, also named the k-th Piltz function (see A007425), then we have for n>1:
a(n) = Sum_{j=1..bigomega(n)} Sum_{k=1..j} (-1)^(j-k)*binomial(j,k)*tau[k](n), or
a(n) = Sum_{j=1..bigomega(n)} Sum_{k=0..j-1} (-1)^k*binomial(j,k)*tau[j-k](n). (End)

Extensions

Originally this sequence was merged with A002033, the number of perfect partitions. Herbert S. Wilf suggested that it warrants an entry of its own.

A050324 Number of ordered factorizations indexed by prime signatures: A074206(A025487).

Original entry on oeis.org

1, 1, 2, 3, 4, 8, 8, 20, 13, 16, 26, 48, 44, 32, 76, 112, 132, 64, 208, 176, 256, 75, 252, 368, 128, 544, 604, 576, 308, 768, 976, 256, 1376, 1888, 1280, 1076, 2208, 818, 2496, 512, 2316, 3392, 1460, 2568, 5536, 2816, 3408, 6080, 3172, 6208, 1024, 7968
Offset: 1

Views

Author

Christian G. Bower, Oct 15 1999

Keywords

Comments

This sequence can help to find terms for A163272, as has been done by Giovanni Resta. A074206(n) is computed only from the prime signature of n. If A074206(k) has the same prime signature as k then A074206(k) is in A163272. - David A. Corneth, Jul 16 2018
The number of ordered prime factorizations of n is A074206(n), not really A002033(n) = A074206(n-1). This has induced confusion in A002033 so it might be worth mentioning the distinction to be made. - M. F. Hasler, Oct 12 2018

Crossrefs

Programs

Extensions

Edited to accommodate change in A025487's offset by Matthew Vandermast, Nov 27 2009

A051466 Largest product of primorials less than A025487(n) that divides A025487(n).

Original entry on oeis.org

1, 2, 2, 4, 6, 8, 12, 6, 16, 12, 24, 30, 32, 36, 48, 60, 64, 72, 60, 96, 30, 72, 120, 128, 144, 180, 192, 210, 216, 240, 256, 288, 360, 384, 420, 432, 180, 480, 512, 360, 576, 420, 432, 720, 768, 840, 864, 900, 960, 1024, 1080, 1152, 210, 1260, 1296, 1440
Offset: 2

Views

Author

Keywords

Comments

Note that A036041(A025487(n)) = A036041(a(n)) + 1 since A025487(n)/a(n) is prime.

Examples

			A025487 = 1, 2, 4, 6, 8, 12, 16, 24, 30, 32, 36, ...; a(n)= 1, 2, 2, 4, 6, 8, 12, 6, 16, 12, ... . (12 divides 36, but 16 through 32 do not.)
A025487(38) = 900 = 5#*5#. The largest product of primorials that divides this number will be 5#*3# = 180 = a(38). - _Charlie Neder_, Oct 20 2018
		

Crossrefs

Programs

  • Haskell
    a051466 n = a051466_list !! (n-2)
    a051466_list = f [head a025487_list] $ tail a025487_list where
       f us (v:vs) = fromJust (find (\x -> mod v x == 0) us) : f (v : us) vs
    -- Reinhard Zumkeller, Jul 17 2013
  • Mathematica
    (* First, load second program at A025487, then: *)
    With[{s = Union@ Flatten@ f[5]}, Table[SelectFirst[Reverse@ Take[s, n - 1], Mod[s[[n]], #] == 0 &], {n, 2, Length@ s}]] (* Michael De Vlieger, Dec 27 2019 *)

Formula

a(n) = A025487(n) / p, where p is the largest prime such that p^A051282(n) | A025487(n). - Charlie Neder, Oct 12 2018

Extensions

Offset updated by Matthew Vandermast, Jul 03 2012
Name edited by Charlie Neder, Oct 20 2018
Name clarified by Antti Karttunen, Dec 24 2019

A304657 Number of ways to represent n/100 years in Shinigami time.

Original entry on oeis.org

26, 76, 76, 208, 176, 252, 176, 544, 208, 604, 176, 768, 176, 604, 604, 1376, 176, 768, 176, 1888, 604, 604, 176, 2208, 818, 604, 544, 1888, 176, 2316, 176, 3392, 604, 604, 1460, 2568, 176, 604, 604, 5536, 176, 2316, 176, 1888, 1888, 604, 176, 6080, 818, 3172
Offset: 1

Views

Author

Felix Fröhlich, May 16 2018

Keywords

Comments

"Lifespan" and "Shinigami time", as used in this sequence, are concepts from the Death Note manga and anime series by Tsugumi Ohba and Takeshi Obata. The lifespan is represented in the series as a set of numbers floating above a person's head when that person is looked at through the Shinigami Eyes. For example, the lifespan of Light Yagami, the main character in the series, is represented as 9 3 31 2 6 3 9 in chapter 5 of the manga and episode 3 of the anime. (In the anime, it is unclear whether the 2 and the 6 are supposed to be connected or not. If they are treated as 26, the resulting number of years would be too large, see below). However, the exact meaning of these numbers is never revealed. Tsugumi Ohba, the author of the manga, supposedly said in an interview he created "a complicated math equation for Light's Life span when the numbers first appeared above his head", but later forgot what it was.
The following is my own theory regarding the meaning of the lifespan numbers of Light Yagami. I started by making an assumption: Light was supposed to live for about 70 to 90 years, neither extremely short, nor extremely long for a Japanese around the year 2000 (cf. WHO, p. 167). When one treats the lifespan as displayed in the manga as a sequence of numbers, computes their product and divides the number by 3600, one obtains 9 * 3 * 31 * 2 * 6 * 3 * 9 = 271188 and 271188/3600 = 75.33, which could be interpreted as meaning that Light was supposed to live for 75 years and 4 months. That number lies within the range 70-90 and also is too nice a number to be a coincidence in my opinion. This suggests that Ohba probably came up with the lifespan by calculating 75.33 * 3600 = 271188, factoring that number into 2 * 2 * 3 * 3 * 3 * 3 * 3 * 3 * 3 * 31, multiplying some of the primes to obtain 2 * 6 * 9 * 9 * 3 * 3 * 31 and then rearranging those factors.
With the above assumptions it is clear that, due to the commutative property of multiplication, a given lifespan in years can have more than one representation in Shinigami time.
Also, while it is unclear whether the lifespan numbers represent the original or remaining lifespan of an individual, rule no. 42 could be interpreted as meaning that the lifespan of Light that Ryuk sees is the original lifespan that probably never changes as Light ages (cf. Death Note Wiki, Manga Chapter Rules - Rule #42).
It seems the terms of the sequence are also terms of A034776. Why?
0.01 years, equal to roughly 3.5 days or 5256 minutes, is the shortest timespan that can be represented in Shinigami time. - Felix Fröhlich, Apr 04 2021

Examples

			For n = 1, we have 0.01*3600 = 36 and 36 = 2 * 2 * 3 * 3.
Thus, the possible representations are as follows:
2 2 3 3; 2 3 2 3; 2 3 3 2; 3 2 2 3; 3 2 3 2; 3 3 2 2
2 2 9; 2 3 6; 2 6 3; 2 9 2; 3 2 6; 3 3 4; 3 4 3; 3 6 2; 4 3 3; 6 2 3; 6 3 2; 9 2 2
2 18; 3 12; 4 9; 6 6; 9 4; 12 3; 18 2
36
There are 6 representations of length 4, 12 representations of length 3, 7 representations of length 2 and 1 representation of length 1. 6 + 12 + 7 + 1 = 26, so a(1) = 26.
		

References

  • Tsugumi Ohba and Takeshi Obata, Death Note 13: How to Read, Paw Prints, 2008.

Crossrefs

Programs

  • PARI
    step_a(n) = n/100
    step_b(n) = floor(n*3600)
    step_c(n, o=[1])=if(n>1, concat(apply(t->vector(t[2], i, t[1]), Vec(factor(n)~))), o) \\ after M. F. Hasler in A027746
    find_index_a(vec) = my(r=#vec-1); while(1, if(vec[r] < vec[r+1], return(r)); r--; if(r==0, return(-1)))
    find_index_b(r, vec) = my(s=#vec); while(1, if(vec[r] < vec[s], return(s)); s--; if(s==r, return(-1)))
    switch_elements(vec, firstpos, secondpos) = my(g); g=vec[secondpos]; vec[secondpos]=vec[firstpos]; vec[firstpos] = g; vec \\ from David A. Corneth
    reverse_order(vec, r) = my(v=[], w=[]); for(x=1, r, v=concat(v, vec[x])); for(y=r+1, #vec, w=concat(w, vec[y])); w=Vecrev(w); concat(v, w)
    next_permutation(vec) = my(r=find_index_a(vec)); if(r==-1, return(0), my(s=find_index_b(r, vec)); vec=switch_elements(vec, r, s); vec=reverse_order(vec, r)); vec
    multiply_neighboring_elements(vec, pos) = my(x=vec[pos]*vec[pos+1], w=[]); for(k=1, pos-1, w=concat(w, vec[k])); w=concat(w, [x]); for(r=pos+2, #vec, w=concat(w, vec[r])); w
    all_permutations(vec) = my(v=[vecsort(vec)], w=vecsort(vec)); while(1, w=next_permutation(w); if(w==0, return(v), v=concat(v, [0]); v[#v]=w))
    all_sets_from_multiplying_neighboring_elements(vec) = my(v=[]); for(k=1, #vec-1, v=concat(v, [0]); v[#v]=multiply_neighboring_elements(vec, k)); v
    count_eligible_sets(vec) = my(v=all_permutations(vec), w=[], i=#v); while(1, for(x=1, #v, my(asfmne=all_sets_from_multiplying_neighboring_elements(v[x])); if(#asfmne==0, return(i)); for(y=1, #asfmne, w=concat(w, [0]); w[#w]=asfmne[y]); w=vecsort(w, , 8)); i=i+#w; v=w; w=[])
    a(n) = my(f=step_c(step_b(step_a(n)))); count_eligible_sets(f)

Extensions

Entry revised by Felix Fröhlich, Apr 03 2021
Showing 1-5 of 5 results.