하이퍼 일루미나티
시간 제한2초메모리 제한512 MB
m(최대 10^16)이 주어질 때, s단 n차원 하이퍼 계단 피라미드의 블록 수가 m이 되는 n >= 3과 s를 찾고, 없으면 impossible을 출력한다.
문제
일루미나티의 위대한 힘을 다시 한번 과시할 때가 왔다. 이를 위해 n차원 블록으로 n차원 하이퍼 계단 피라미드를 짓기로 했다.
- 피라미드의 모든 계단은 n차원 하이퍼 직육면체다.
- 각 계단은 n번째 차원에서 높이가 정확히 블록 1개다.
- 피라미드는 s개의 계단으로 이루어지며, 맨 아래 계단은 나머지 n − 1개 차원 각각에서 길이가 s개 블록이다.
- 그 위의 각 계단은 바로 아래 계단보다 n − 1개 차원 각각에서 1개 블록씩 짧다.
- 맨 위 계단은 정확히 블록 1개다.
일루미나티 수뇌부는 힘을 더 확실히 증명하기 위해 두 가지 조건을 추가하기로 했다.
- n은 3 이상이어야 한다.
- 피라미드를 짓는 데 사용된 블록 수가 의미 있는 수여야 한다.

그림 H.1: 계단 3개로 이루어지고 총 블록 14개를 사용한 3차원 하이퍼 피라미드.
입력
입력은 다음과 같다.
- 수뇌부가 선택한 의미 있는 수인 정수 m(1 ≤ m ≤ 10^16)이 한 줄에 하나 주어진다.
출력
모든 조건을 만족하는 하이퍼 계단 피라미드가 존재하면 피라미드의 차원 n과 계단 수 s를 한 줄에 출력한다. 존재하지 않으면 impossible을 출력한다. 해가 여러 개면 아무거나 출력해도 된다.