비밀 다항식
시간 제한1초메모리 제한128 MB
음이 아닌 정수 계수를 가진 미지의 다항식에 대해 f(1)과 f(f(1))이 주어질 때, 그 다항식을 복원하거나 IMPOSSIBLE 또는 AMBIGUOUS를 판정한다.
문제
다음과 같은 아이큐 테스트 문제를 본 적이 있을 것이다. 수열 1, 2, 3, __ 에서 다음에 올 수를 구하여라. 정답은 이라고 하는데, 이 수열이 다항식 에 대한 의 값을 나열한 것이기 때문이다. 더 일반적으로, 어떤 다항식의 값에 관한 정보가 주어졌을 때 그 다항식을 알아낼 수 있을까? 여기서는 계수가 모두 음이 아닌 정수인 다항식만 생각한다.
입력
첫 줄에는 정수 ()이 주어지며, 이는 알아내야 할 다항식의 개수이다. 이어지는 개의 줄에는 각각 두 정수 과 이 주어지는데, 는 찾아야 할 다항식이다. 이 값들은 각각 부호 있는 2의 보수 32비트 정수 범위 안에 들어간다.
출력
각 다항식에 대해, 그 계수들을 공백으로 구분하여 한 줄에 출력한다. 다항식의 차수가 이면, 개의 계수를 차수가 높은 것부터 낮은 것 순서로, 즉 의 계수부터 의 계수까지 나열한다. 다항식이 영다항식이면 하나만 출력한다. 요구된 과 값을 갖는 다항식 가 존재하지 않으면, 대신 IMPOSSIBLE 이라는 단어가 담긴 줄을 출력한다. 요구된 값을 갖는 다항식 가 둘 이상이면, 대신 AMBIGUOUS 라는 단어가 담긴 줄을 출력한다.