가장 작은 16진수 배수

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

문제

정수 NN과 16진법 숫자 DD개가 주어진다. 16진법으로 나타냈을 때 주어진 숫자만 쓰면서 NN으로 나누어떨어지는 가장 작은 양의 정수 XX를 구하라.

입력

첫째 줄에 테스트 케이스의 개수 TT가 주어진다 (1T1001 \le T \le 100).

각 테스트 케이스는 두 줄이다. 첫째 줄에는 NNDD가 10진법으로 공백을 사이에 두고 주어진다 (1N2000001 \le N \le 200000, 1D161 \le D \le 16). 둘째 줄에는 쓸 수 있는 16진법 숫자 d1,d2,,dDd_1, d_2, \dots, d_D가 공백으로 구분되어 주어진다. 각 숫자는 0부터 9까지와 a부터 f까지 중 하나이고, 서로 다르며, 오름차순으로 정렬되어 있다.

출력

각 테스트 케이스마다 한 줄씩 출력한다. NN의 배수이면서 16진법 표기에 주어진 숫자만 쓰는 가장 작은 양의 정수 XX를 16진법으로 출력한다. a부터 f는 소문자로 쓰고, 앞에 0을 붙이지 않는다. 조건을 만족하는 수가 없으면 no solution을 출력한다.

답은 아주 길어질 수 있다. 64비트 정수에 담기지 않는 경우가 있으므로 문자열로 만들어야 한다.