login
A276372
Numbers n such that, in the prime factorization of n, the list of the exponents is a rotation of the list of the prime factors.
0
1, 4, 27, 72, 108, 800, 3125, 6272, 12500, 30375, 36000, 48600, 84375, 247808, 337500, 395136, 750141, 823543, 857304, 1384448, 3294172, 22235661, 24532992, 37879808, 53782400, 88942644, 122500000, 161980416, 171478296, 189267968, 235782657, 600112800, 1313046875, 2155524696
OFFSET
1,2
EXAMPLE
4 is in the sequence because the prime factorization of 4 is 2^2, and the list of exponents (i.e., [2]) is a rotation of the list of prime factors (i.e., [2]).
36000 is in the sequence because the prime factorization of 36000 is 2^5 * 3^2 * 5^3, and the list of exponents (i.e., [5, 2, 3]) is a rotation of the list of prime factors (i.e., [2, 3, 5]).
84 is not in the sequence because the prime factorization of 84 is 2^2 * 3^1 * 7^1, and the list of exponents (i.e., [2, 1, 1]) is not a rotation of the list of prime factors (i.e., [2, 3, 7]).
21600 is not in the sequence because the prime factorization of 21600 is 2^5 * 3^3 * 5^2, and the list of exponents (i.e., [5, 3, 2]) is not a rotation of the list of prime factors (i.e., [2, 3, 5]).
MATHEMATICA
Select[Range[10^6], Function[w, Total@ Boole@ Map[First@ w == # &, RotateLeft[Last@ w, #] & /@ Range[Length@ Last@ w]] > 0]@ Transpose@ FactorInteger@ # &] (* Michael De Vlieger, Sep 01 2016 *)
PROG
(Sage)
def in_seq( n ):
if n == 1: return True
pf = list( factor( n ) )
primes = [ t[0] for t in pf ]
exponents = [ t[1] for t in pf ]
if primes[0] in exponents:
i = exponents.index(primes[0])
exp_rotated = exponents[i : ] + exponents[0 : i]
return primes == exp_rotated
else:
return False
print([n for n in range(1, 10000000) if in_seq(n)])
(Sage)
# Much faster program that generates the solutions rather than searching for them.
from sage.misc.misc import powerset
primes = primes_first_n(9)
max_prime = primes[-1]
solutions = set([1])
max_solution = min(2^max_prime * max_prime^2, max_prime^max_prime)
for subset in powerset(primes):
subset_list = list(subset)
for i in range(0, len(subset_list)):
exponents = subset_list[i : ] + subset_list[0 : i]
product = 1
for j in range(0, len(subset_list)):
product = product * subset_list[j]^exponents[j]
if product <= max_solution:
solutions.add(product)
print(sorted(solutions))
CROSSREFS
Subsequence of A122406 and of A056166. A048102 is a subsequence.
Sequence in context: A054412 A122405 A122406 * A071837 A334633 A266011
KEYWORD
nonn
AUTHOR
Robert C. Lyons, Aug 31 2016
STATUS
approved