%I #70 Jul 18 2024 16:56:20
%S 1,2,3,2,2,5,2,3,7,2,2,2,3,3,2,5,11,2,2,3,13,2,7,3,5,2,2,2,2,17,2,3,3,
%T 19,2,2,5,3,7,2,11,23,2,2,2,3,5,5,2,13,3,3,3,2,2,7,29,2,3,5,31,2,2,2,
%U 2,2,3,11,2,17,5,7,2,2,3,3,37,2,19,3,13,2,2,2,5,41,2,3,7,43,2,2,11,3,3,5
%N Irregular triangle in which first row is 1, n-th row (n>1) gives prime factors of n with repetition.
%C n-th row has length A001222(n) (n>1).
%H N. J. A. Sloane, <a href="/A027746/b027746.txt">First 2048 rows of triangle, flattened</a>
%H S. von Worley (?), <a href="http://www.datapointed.net/visualizations/math/factorization/animated-diagrams/">Animated Factorization Diagrams</a>, Oct. 2012.
%H Brent Yorgey, <a href="https://mathlesstraveled.com/2012/10/05/factorization-diagrams/">Factorization diagrams</a>, The Math Less Traveled, Oct 05 2012.
%F Product_{k=1..A001222(n)} T(n,k) = n.
%F From _Reinhard Zumkeller_, Aug 27 2011: (Start)
%F A001414(n) = Sum_{k=1..A001222(n)} T(n,k), n>1;
%F A006530(n) = T(n,A001222(n)) = Max_{k=1..A001222(n)} T(n,k);
%F A020639(n) = T(n,1) = Min_{k=1..A001222(n)} T(n,k). (End)
%e Triangle begins
%e 1;
%e 2;
%e 3;
%e 2, 2;
%e 5;
%e 2, 3;
%e 7;
%e 2, 2, 2;
%e 3, 3;
%e 2, 5;
%e 11;
%e 2, 2, 3;
%e ...
%p P:=proc(n) local FM: FM:=ifactors(n)[2]: seq(seq(FM[j][1],k=1..FM[j][2]),j=1..nops(FM)) end: 1; for n from 2 to 45 do P(n) od; # yields sequence in triangular form; _Emeric Deutsch_, Feb 13 2005
%t row[n_] := Flatten[ Table[#[[1]], {#[[2]]}] & /@ FactorInteger[n]]; Flatten[ Table[ row[n], {n, 1, 45}]] (* _Jean-François Alcover_, Dec 01 2011 *)
%o (Haskell)
%o import Data.List (unfoldr)
%o a027746 n k = a027746_tabl !! (n-1) !! (k-1)
%o a027746_tabl = map a027746_row [1..]
%o a027746_row 1 = [1]
%o a027746_row n = unfoldr fact n where
%o fact 1 = Nothing
%o fact x = Just (p, x `div` p) where p = a020639 x
%o -- _Reinhard Zumkeller_, Aug 27 2011
%o (PARI) A027746_row(n,o=[1])=if(n>1,concat(apply(t->vector(t[2],i,t[1]), Vec(factor(n)~))),o) \\ Use %(n,[]) if you want the more natural [] for the first row. - _M. F. Hasler_, Jul 29 2015
%o (Sage) v=[1]
%o for k in [2..45]: v.extend(p for (p, m) in factor(k) for _ in range(m))
%o print(v) # _Giuseppe Coppoletta_, Dec 29 2017
%o (Python)
%o def factors(n: int) -> list[int]:
%o p = n
%o L:list[int] = []
%o for f in range(2, p + 1):
%o if f * f > p: break
%o while True:
%o q, r = divmod(p, f)
%o if r != 0: break
%o L.append(f)
%o p = q
%o if p == 1: return L
%o L.append(p)
%o return L # _Peter Luschny_, Jul 18 2024
%Y Cf. A000027, A001222, A027748.
%Y a(A022559(A000040(n))+1) = A000040(n).
%Y Column 1 is A020639, columns 2 and 3 correspond to A014673 and A115561.
%Y A281890 measures frequency of each prime in each column, with A281889 giving median values.
%Y Cf. A175943 (partial products), A265110 (partial row products), A265111.
%K nonn,easy,nice,tabf
%O 1,2
%A _Maghraoui Abdelkader_
%E More terms from _James A. Sellers_