부분 수열로 만드는 최대 수

아직 제출이 없습니다시간 제한3초메모리 제한128 MB

문제

세 수 NN, QQ, RR이 주어진다. 다음 조건을 모두 만족하는 MM을 구해야 한다.

  • MM은 양의 정수다.
  • MM을 십진법으로 쓴 문자열이 NN을 십진법으로 쓴 문자열의 부분 수열이다. 즉 NN의 자릿수 중 0개 이상을 지워서 MM을 만들 수 있다.
  • MMQQ로 나눈 나머지가 RR이다.
  • MM은 조건을 만족하는 값 중 가장 크다.

십진법 표기는 0으로 시작하지 않으므로, 남긴 첫 자리가 0이면 안 된다.

입력

첫째 줄에 테스트 케이스의 개수 TT가 주어진다 (1T2001 \le T \le 200). 다음 TT개 줄에 테스트 케이스가 한 줄에 하나씩 주어진다.

각 줄에는 공백 하나로 구분한 세 정수 NN, RR, QQ가 이 순서로 주어진다 (1N<1010001 \le N < 10^{1000}, 0R<Q10000 \le R < Q \le 1000). 입력에 나오는 수는 모두 앞에 0이 붙지 않는다.

출력

각 테스트 케이스마다 문제에서 설명한 MM을 앞에 0을 붙이지 않고 한 줄에 출력한다. 조건을 만족하는 MM이 없으면 대신 Not found를 한 줄에 출력한다.

힌트

N=840N = 840, R=0R = 0, Q=8Q = 8인 경우, 84084088의 배수이므로 MM의 최댓값은 840840이다.

N=901N = 901, R=3R = 3, Q=8Q = 8인 경우, 901901에서 만들 수 있는 부분 수열은 99, 00, 11, 9090, 0101, 9191, 901901이다. 이 중 00은 양수가 아니고 0101은 앞에 0이 붙어서 빠진다. 남은 값 중 88로 나눈 나머지가 33인 것은 9191뿐이다.

N=123456789N = 123456789, R=10R = 10, Q=100Q = 100인 경우, 100100으로 나눈 나머지가 1010인 부분 수열이 없다.