A powerful number is a positive integer \$n\$ such that for every prime \$p\$ that divides \$n\$, \$p^2\$ also divides \$n\$. Or equivalently, \$n\$ is powerful if and only if it can be written in the form \$n = a^2b^3\$, where \$a\$ and \$b\$ are positive integers.
For example, \$972 = 2^2 \times 3^5\$ is powerful, because \$2^2\$ and \$3^2\$ both divide \$972\$. And we have \$972 = 6^2 \times 3^3\$.
\$961 = 31^2\$ is also powerful, because \$31^2\$ divides \$961\$. And we have \$961 = 31^2 \times 1^3\$.
On the other hand, \$1001 = 7 \times 11 \times 13\$ is not powerful, because \$7^2\$ does not divide \$1001\$. It is not possible to write \$1001\$ in the form \$a^2b^3\$.
Here is a list of all the powerful numbers less than 1000:
1, 4, 8, 9, 16, 25, 27, 32, 36, 49, 64, 72, 81, 100, 108, 121, 125, 128, 144, 169, 196, 200, 216, 225, 243, 256, 288, 289, 324, 343, 361, 392, 400, 432, 441, 484, 500, 512, 529, 576, 625, 648, 675, 676, 729, 784, 800, 841, 864, 900, 961, 968, 972
This is sequence A001694 in the OEIS.
Task
Given a positive integer \$n\$, determine whether or not it is a powerful number.
This is code-golf, so the shortest code in bytes wins.
This is also a decision-problem so you may use your language's convention for truthy/falsy (swapping truthy and falsy is allowed), or use two distinct, fixed values to represent true or false.