OFFSET
1,2
COMMENTS
Exponents equal to 1 are omitted and therefore this sequence differs from A067599.
Here the first duplicate (ambiguous) term appears already with a(8)=23=a(6), in A067599 this happens only much later. - M. F. Hasler, Oct 18 2014
The number n = 13532385396179 = 13·53^2·3853·96179 = a(n) is (maybe the first?) nontrivial fixed point of this sequence, making it the first known index of a -1 in A195264. - M. F. Hasler, Jun 06 2017
LINKS
T. D. Noe, Table of n, a(n) for n = 1..10000
Tony Padilla and Brady Haran, 13532385396179, Numberphile Video, 2017
N. J. A. Sloane, Confessions of a Sequence Addict (AofA2017), slides of invited talk given at AofA 2017, Jun 19 2017, Princeton. Mentions this sequence.
EXAMPLE
8=2^3, which reads 23, hence a(8)=23; 12=2^2*3, which reads 223, hence a(12)=223.
MAPLE
ifsSorted := proc(n)
local fs, L, p ;
fs := sort(convert(numtheory[factorset](n), list)) ;
L := [] ;
for p in fs do
L := [op(L), [p, padic[ordp](n, p)]] ;
end do;
L ;
end proc:
A080670 := proc(n)
local a, p ;
if n = 1 then
return 1;
end if;
a := 0 ;
for p in ifsSorted(n) do
a := digcat2(a, op(1, p)) ;
if op(2, p) > 1 then
a := digcat2(a, op(2, p)) ;
end if;
end do:
a ;
end proc: # R. J. Mathar, Oct 02 2011
# second Maple program:
a:= proc(n) option remember; `if`(n=1, 1, (l->
parse(cat(seq(`if`(l[i, 2]=1, l[i, 1], [l[i, 1],
l[i, 2]][]), i=1..nops(l)))))(sort(ifactors(n)[2])))
end:
seq(a(n), n=1..100); # Alois P. Heinz, Mar 17 2020
MATHEMATICA
f[n_] := FromDigits[ Flatten@ IntegerDigits[ Flatten[ FactorInteger@ n /. {1 -> {}}]]]; f[1] = 1; Array[ f, 60] (* Robert G. Wilson v, Mar 02 2003 and modified Jul 22 2014 *)
PROG
(PARI) A080670(n)=if(n>1, my(f=factor(n), s=""); for(i=1, #f~, s=Str(s, f[i, 1], if(f[i, 2]>1, f[i, 2], ""))); eval(s), 1) \\ Charles R Greathouse IV, Oct 27 2013; case n=1 added by M. F. Hasler, Oct 18 2014
(PARI) A080670(n)=if(n>1, eval(concat(apply(f->Str(f[1], if(f[2]>1, f[2], "")), Vec(factor(n)~)))), 1) \\ M. F. Hasler, Oct 18 2014
(Haskell)
import Data.Function (on)
a080670 1 = 1
a080670 n = read $ foldl1 (++) $
zipWith (c `on` show) (a027748_row n) (a124010_row n) :: Integer
where c ps es = if es == "1" then ps else ps ++ es
-- Reinhard Zumkeller, Oct 27 2013
(Python)
import sympy
[int(''.join([str(y) for x in sorted(sympy.ntheory.factorint(n).items()) for y in x if y != 1])) for n in range(2, 100)] # compute a(n) for n > 1
# Chai Wah Wu, Jul 15 2014
CROSSREFS
KEYWORD
AUTHOR
Jon Perry, Mar 02 2003
EXTENSIONS
Edited and extended by Robert G. Wilson v, Mar 02 2003
STATUS
approved