슬론의 식

x에 대한 일차식을 해석해 식의 값을 M으로 나눈 나머지가 P가 되는 가장 작은 음이 아닌 x를 구합니다.

보통6정수론수학스택아직 제출이 없습니다시간 제한1초메모리 제한64 MB

문제

슬론은 수업 시간에 한시도 가만히 있지 못하는 학생이다. 선생님은 슬론을 얌전히 앉혀 두려고 어려운 산술 문제를 냈다.

선생님이 산술식 AA와 두 정수 PP, MM을 준다. 슬론은 다음 질문에 답해야 한다. AAMM으로 나눈 나머지가 PP가 되는 변수 xx의 값 중 가장 작은 음이 아닌 값은 얼마인가? 답은 항상 존재한다.

AA에 분배법칙을 적용해 전개해도 xxxx가 서로 곱해지는 항은 생기지 않는다. 즉 AAxx에 대한 일차 이하의 식이다.

식의 값이 음수일 수도 있으므로, 나머지는 항상 00 이상 MM 미만인 값으로 정의한다.

올바른 식의 예는 5+x*(3+2), x+3*x+4*(5+3*(2+x-2*x))이다. 올바르지 않은 식의 예는 5*(3+x*(3+x)), x*(x+x*(1+x))이다.

입력

첫째 줄에 식 AA가 주어진다 (1A1000001 \le |A| \le 100\,000).

둘째 줄에 두 정수 PPMM이 주어진다 (0PM10 \le P \le M - 1, 1M10000001 \le M \le 1\,000\,000).

AA는 문자 +, -, *, (, ), x와 숫자 0부터 9까지로만 이루어진다. 괄호는 항상 짝을 이룬다. +, -, *는 항상 두 값에 적용되므로 (-5)(4+-5) 같은 식은 나오지 않는다. 곱셈은 모두 명시적으로 쓰므로 4(5)2(x) 같은 식도 나오지 않는다.

출력

조건을 만족하는 가장 작은 음이 아닌 xx의 값을 한 줄에 출력한다.

힌트

AA5+3+x이고 PP99, MM1010인 경우를 보자. x=0x = 0이면 나머지가 88이고 x=1x = 1이면 나머지가 99이므로, 답은 11이다.