login
A064364
Positive integers sorted by A001414(n), the sum of their prime divisors, as the major key and n as the minor key.
15
1, 2, 3, 4, 5, 6, 8, 9, 7, 10, 12, 15, 16, 18, 14, 20, 24, 27, 21, 25, 30, 32, 36, 11, 28, 40, 45, 48, 54, 35, 42, 50, 60, 64, 72, 81, 13, 22, 56, 63, 75, 80, 90, 96, 108, 33, 49, 70, 84, 100, 120, 128, 135, 144, 162, 26, 44, 105, 112, 125, 126, 150, 160, 180, 192, 216, 243
OFFSET
1,2
COMMENTS
This is a permutation of the positive integers.
a(1) could be taken as 0 because 1 is not a member of A001414 and one could start with a(0)=1 (see the W. Lang link).
The row length sequence of this array is A000607(n), n>=2.
If the array is [1,0,2,3,4,5,6,6,...] with offset 0 then the row length sequence is A000607(n), n>=0.
From David James Sycamore, May 11 2018: (Start)
For n > 1, a(n) is the smallest number not yet seen such that sopfr(a(n)) is the least possible integer. The sequence lists in increasing order elements of the finite sets S(k) = {x: sopfr(x)=k}, k >= 0, where sopfr(x) = 0 iff x = 1. When a(n) = A056240(k) for some k >= 2, then sopfr(a(n)) = k and a(n) is the first of A000607(k) terms, all of which have sopfr = k. (A000607(k) is the number of partitions of k into prime parts.) Consequently the sequence follows a sawtooth profile, rising from a(n) = A056240(k) to A000792(k), the greatest number with sopfr = k, then starting over with A056240(k+1) for the next larger value of sopfr. (End) [Edited by M. F. Hasler, Jan 19 2019]
FORMULA
If a(n) = A056240(k) for some k then a(n+A000607(k)-1) = A000792(k). - David James Sycamore, May 11 2018
EXAMPLE
The triangle reads:
1,
(0,) (see comment in link to "first 16 rows" by W. Lang)
2,
3,
4,
5, 6,
8, 9,
7, 10, 12,
15, 16, 18,
14, 20, 24, 27,
21, 25, 30, 32, 36,
11, 28, 40, 45, 48, 54,
35, 42, 50, 60, 64, 72, 81,
13, 22, 56, 63, 75, 80, 90, 96, 108,
...
MATHEMATICA
terms = 1000; nmax0 = 100000 (* a rough estimate of max sopfr *);
sopfr[n_] := sopfr[n] = Total[Times @@@ FactorInteger[n]];
f[n1_, n2_] := Which[t1 = sopfr[n1]; t2 = sopfr[n2]; t1 < t2, True, t1 == t2, n1 <= n2, True, False];
Clear[g];
g[nmax_] := g[nmax] = Sort[Range[nmax], f][[1 ;; terms]];
g[nmax = nmax0];
g[nmax += nmax0];
While[g[nmax] != g[nmax - nmax0], Print[nmax]; nmax += nmax0];
A064364 = g[nmax] (* Jean-François Alcover, Mar 13 2019 *)
PROG
(Haskell)
import Data.List (partition, union)
a064364 n k = a064364_tabf !! (n-1) !! (k-1)
a064364_row n = a064364_tabf !! (n-1)
a064364_tabf = [1] : tail (f 1 [] 1 (map a000792 [2..])) where
f k pqs v (w:ws) = (map snd pqs') :
f (k + 1) (union pqs'' (zip (map a001414 us) us )) w ws where
us = [v + 1 .. w]
(pqs', pqs'') = partition ((== k) . fst) pqs
a064364_list = concat a064364_tabf
-- Reinhard Zumkeller, Jun 11 2015
(PARI) lista(nn) = {nmax = A000792(nn); v = vector(nmax, k, A001414(k)); for (n=1, nn, vn = select(x->x==n, v, 1); for (k = 1, #vn, print1(vn[k], ", ")))} \\ Michel Marcus, May 01 2018
(PARI) A064364_vec(N, k=6, L=9)={vector(N, i, if(i<7, N=i, until(A001414(N+=1)==k, ); N<L, N, k++; L=3^((k-2)\3)*(2+(k-2)%3); N+0*N=A056240(k)-1))} \\ To compute terms up to a given value of k=sopfr(n) and/or for large N >> 1000, it is more efficient to use code similar to lista() above, with "for(k...)" replaced by "a=concat(a, vn)". - M. F. Hasler, Jan 19 2019
CROSSREFS
Cf. A001414.
Cf. A000607 (row lengths), A002098 (row sums), A056240 (least = first term in the n-th row), A000792 (greatest term in the n-th row).
Cf. A257815 (inverse).
Sequence in context: A303936 A368239 A303645 * A332977 A269855 A348356
KEYWORD
easy,nonn,look,tabf
AUTHOR
Howard A. Landman, Sep 25 2001
EXTENSIONS
More terms from Vladeta Jovovic, Sep 27 2005
STATUS
approved