완전 P제곱수

시간 제한1초메모리 제한128 MB

문제

정수 $b$에 대해 $x = b^2$으로 나타낼 수 있는 $x$를 완전제곱수라 하고, $x = b^3$으로 나타낼 수 있는 $x$를 완전세제곱수라 한다. 마찬가지로 어떤 정수 $b$에 대해 $x = b^p$로 나타낼 수 있으면 $x$를 완전 $p$제곱수라고 한다.

정수 $x$가 주어질 때, $x = b^p$를 만족하는 정수 $b$가 존재하는 가장 큰 정수 $p$를 구하는 프로그램을 작성하시오.

입력

입력은 여러 개의 테스트 케이스로 이루어진다. 각 테스트 케이스는 정수 $x$ 하나가 적힌 한 줄이다. $x$는 $|x| \ge 2$를 만족하며 부호 있는 32비트 정수 범위, 즉 $-2147483648 \le x \le 2147483647$ 안에 있다.

마지막 테스트 케이스 다음 줄에는 $0$이 하나 주어지며, 이 줄은 처리하지 않고 입력의 끝을 나타낸다.

출력

각 테스트 케이스에 대해, $x = b^p$를 만족하는 정수 $b$가 존재하는 가장 큰 정수 $p$를 한 줄에 하나씩 출력한다.