Powerful numbers are positive integers such that, when expressed as a prime factorisation:
$$a = p_1^{e_1} \times p_2^{e_2} \times p_3^{e_3} \cdots \times p_k^{e_k}$$
all exponents \$e_1, e_2, ...\$ are greater than or equal to \$2\$. Note that the exponents do not include zero exponents, as exampled by \$200 = 2^3 \times 3^0\times 5^2 = 2^3 \times 5^2\$ being a powerful number. This includes all perfect powers, and a few "extra" numbers that are not perfect powers.
Achilles numbers are powerful numbers that are not perfect powers. The smallest Achilles number is \$72 = 2^3 \times 3^2\$. The Achilles numbers less than or equal to \$500\$ are \$72, 108, 200, 288, 392, 432\$ and \$500\$.
You are to take an Achilles number as input and output the smallest Achilles number greater than the input.
You may input and output in any convenient method. This is code-golf so the shortest code in bytes wins
Test Cases
input output 72 108 108 200 200 288 800 864 1152 1323 4500 4563 3456 3528 4563 4608 43808 43904 90828 91592 28800 29403 64800 64827 29768 30375 The program I used to generate these test cases. Contains spoilers for anyone who can understand Jelly.