시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
1 초 | 512 MB | 123 | 51 | 26 | 44.068% |
BOJ의 쉬운 문제 제곱 ㄴㄴ를 풀지 못해 화가 난 명준은 제곱ㄴㄴ수를 뒤집은 제곱ㄱㄱ수를 만들어냈다.
양의 정수 X의 모든 소인수 p에 대하여 p2도 X의 약수라면, X를 제곱ㄱㄱ수라고 한다. 첫 제곱ㄱㄱ수는 1, 4, 8, 9, 16, 25, 27, 32, ... 이다.
제곱ㄱㄱ수를 하나 찾아내는 것은 쉽다. 아무 거듭제곱수를 잡으면 곧 제곱ㄱㄱ수이기 때문이다. 또 명준은 모든 제곱ㄱㄱ수는 제곱수와 세제곱수를 곱한 형태로 표현할 수 있다는 것도 알아냈다.
원하는 크기의 제곱ㄱㄱ수 하나를 찾는 것이 쉽기 때문에, 명준은 이웃한 두 양의 정수가 모두 제곱ㄱㄱ수가 되는 경우를 찾으려고 한다. 명준이 원하는 크기의 이웃한 두 제곱ㄱㄱ수가 있는지 찾아주자!
첫째 줄에 정수 N이 주어진다. (0 ≤ N < 1000)
A와 A+1 가 모두 제곱ㄱㄱ수이고, 100N ≤ A < 100N+1 을 만족하는 A를 찾으면 된다.
조건을 만족하는 A가 존재하는 경우, 첫째 줄에 A = B2C3 인 두 양의 정수 B, C를 출력한다.
이어서 둘째 줄에 A + 1 = D2E3 인 두 양의 정수 D, E를 출력한다.
조건을 만족하는 A가 여럿 있다면 그 중 하나에 대한 답만을 출력한다.
조건을 만족하는 A가 없는 경우에는 첫째 줄에 -1을 출력하고 종료한다.
0
1 2 3 1
8, 9는 제곱ㄱㄱ수로, 1 ≤ 8 < 100을 만족한다.
출력은 A와 A+1이 각각 8 = 12 × 23 , 9 = 32 × 13 임을 의미한다.
1
5 3 26 1