시간 제한
메모리 제한
시간 제한
1초
메모리 제한
128 MB
양의 정수들의 집합 K가 주어진다.
p와 q를 0이 아닌 두 십진 숫자라고 하자. 다음 조건이 성립하면 두 숫자를 K-동치라고 부른다.
모든 n∈K에 대하여, n의 십진 표기에서 숫자 p 하나를 q로 바꾸거나 숫자 q 하나를 p로 바꾸어 얻은 수가 항상 다시 K의 원소가 된다.
예를 들어 K가 3의 배수 전체의 집합이면 숫자 1, 4, 7은 서로 K-동치이다. 어떤 수의 십진 표기에서 1을 4로 바꾸어도 그 수가 3으로 나누어떨어지는지 여부는 바뀌지 않기 때문이다.
K-동치는 숫자들 위의 동치 관계이다(반사적, 대칭적, 추이적).
K는 서로소인 유한 개의 정수 구간들의 합집합으로 주어진다. 숫자 1부터 9까지의 동치류를 모두 구하여라.
첫 줄에 K를 이루는 구간의 개수 n이 주어진다 (1≤n≤10000).
다음 n개의 줄에는 각각 두 양의 정수 ai와 bi가 주어지며, 이는 구간 [ai,bi](ai≤x≤bi인 모든 정수 x)를 나타낸다. 여기서 1≤ai≤bi≤1018이다. 또한 2≤i≤n인 모든 i에 대하여 ai≥bi−1+2이다(구간들은 서로소이며 오름차순으로 주어진다).
각 동치류를 그 원소들을 오름차순으로 이어 붙인 문자열로 나타낸다.
숫자 1부터 9까지의 모든 동치류를 사전순으로 정렬하여 한 줄에 하나씩 출력한다.