A175066 a(1) = 1, for n >= 2: a(n) = number of ways h to write perfect powers A117453(n) as m^k (m >= 2, k >= 2).
1, 2, 3, 2, 3, 2, 2, 3, 3, 2, 2, 5, 3, 2, 2, 3, 3, 2, 2, 2, 3, 2, 3, 2, 3, 4, 2, 2, 3, 2, 2, 2, 2, 5, 2, 2, 3, 2, 5, 2, 2, 2, 2, 3, 5, 2, 2, 2, 3, 3, 2, 2, 2, 3, 2, 2, 2, 3, 2, 2, 2, 2, 3, 2, 3, 3, 2, 2, 3, 2, 2, 2, 3, 2, 2, 2, 3, 2, 2, 2, 2, 3, 2, 2, 2, 3, 2, 2, 7, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 3, 2
Offset: 1
Keywords
Examples
For n = 12, A117453(12) = 4096 and a(12)=5 since there are 5 ways to write 4096 as m^k: 64^2 = 16^3 = 8^4 = 4^6 = 2^12. 729=27^2=9^3=3^6 and 1024=32^2=4^5=2^10 yield a(8)=a(9)=3. - _R. J. Mathar_, Jan 24 2010
Crossrefs
Cf. A117453.
Programs
-
PARI
lista(nn) = {print1(1, ", "); for (i=2, nn, if (po = ispower(i), np = sum(j=2, po, ispower(i, j)); if (np>1, print1(np, ", "));););} \\ Michel Marcus, Mar 20 2013
-
Python
from math import gcd from sympy import mobius, integer_nthroot, factorint, divisor_count, primerange def A175066(n): if n == 1: return 1 def bisection(f,kmin=0,kmax=1): while f(kmax) > kmax: kmax <<= 1 while kmax-kmin > 1: kmid = kmax+kmin>>1 if f(kmid) <= kmid: kmax = kmid else: kmin = kmid return kmax def f(x): return int(n+sum(mobius(k)*(integer_nthroot(x,k)[0]-1+sum(integer_nthroot(x,p*k)[0]-1 for p in primerange((x//k).bit_length()))) for k in range(1,x.bit_length()))) return divisor_count(gcd(*factorint(bisection(f,n,n)).values()))-1 # Chai Wah Wu, Nov 24 2024
Formula
If A117453(n) = m^k with k maximal, then a(n) = tau(k) - 1. - Charlie Neder, Mar 02 2019
Extensions
Corrected and extended by R. J. Mathar, Jan 24 2010
Comments