디스크 문제
시간 제한2초메모리 제한512 MB
고정된 32차 이진 다항식 P(x)에 대한 나머지 Q(x)가 주어질 때, x^k mod P(x) = Q(x)를 만족하는 가장 작은 k를 구한다.
문제
특수 문자열 저장소(SSS)에는 거대한 문자열 뱅크가 있다. 각 문자열마다 순환 중복 검사 코드(CRC)도 함께 저장된다. SSS의 하드 디스크는 매우 안정적이어서 각 문자열은 최대 한 비트만 손상될 수 있다.
Byteazar는 이런 오류를 복구하는 프로그램을 작성해야 한다. 그러기 위해서는 다음 문제를 풀어야 한다.
체 위의 일변수 다항식을 생각하자. 계수는 과 만 가능하고, 모든 계산은 모듈로 로 수행된다. 이라 하자. 다항식 는 놀라운 성질이 있다. 인 서로 다른 두 정수 와 에 대해, 다항식 와 도 서로 다르다.
여기서 는 다항식 를 로 나눈 나머지이다. 형식적으로 이고, 에서 의 최고 차수는 에서 의 최고 차수보다 작으며, 인 다항식 가 존재한다. 정수 나눗셈과 마찬가지로, 임의의 다항식 와 영이 아닌 다항식 에 대해 이런 와 는 각각 정확히 하나씩 존재한다. 예를 들어 이고, 이때 이다.
주어진 각 다항식 에 대해, Byteazar는 가 와 같아지는 최소의 음이 아닌 정수 를 찾아야 한다. 그를 도와주자.
입력
입력은 하나 이상의 테스트 케이스로 이루어진다.
각 테스트 케이스는 다항식 를 포함하는 한 줄로 이루어진다. 각 다항식은 하나 이상의 항으로 이루어지며, 연속한 항은 문자 '+'로 구분된다. 각 항은 x^k 형태로 주어지고, 여기서 차수 는 인 정수이다. 모든 항은 서로 다르고 가 감소하는 순서로 주어진다. 입력에는 공백이 없다.
테스트 케이스는 최대 개이다. 입력은 하나의 0만 포함하는 줄로 끝나며, 이 줄은 테스트 케이스로 취급하지 않는다.
출력
각 테스트 케이스에 대해 문제의 답을 한 줄에 출력한다.