순환수
시간 제한1초메모리 제한128 MB
k자리 수 A의 배수 1A부터 kA까지 모두 순환적으로 같은 수일 때, 이러한 A의 배수 가운데 n 이상인 가장 작은 B를 찾는다.
문제
바이토시아(Bajtocja)의 학자 모임은 되도록 많은 이른바 순환수(cyclic number)를 찾아내려 합니다. 아래 정의에 따라 이들을 돕는 프로그램을 작성하세요.
를 고정된 양의 정수라 하고, 를 십진법 표기가 정확히 자리인 양의 정수라 하자. 이때 최상위 자리에 이 오는 것도 허용한다. 의 각 자릿수를 로 쓰며, 은 최상위 자리, 는 최하위 자리이다.
자리 수 와 가 순환적으로 같다(cyclically equal)는 것은, 어떤 ()이 존재하여
가 성립하는 것을 뜻한다. 즉 의 자릿수를 왼쪽으로 칸 순환 이동시키면 의 값과 같아지는 경우이다.
자리 수 가 순환수라는 것은, 집합 에 속한 임의의 두 수가 서로 순환적으로 같다는 것을 뜻한다. 순환수 의 가족(family)은 인 모든 수를 말한다.
다음을 수행하는 프로그램을 작성하세요.
- 양의 정수 을 입력받는다.
- 어떤 이 존재하여 가 어떤 자리 순환수 의 가족에 속하게 되는, 이상인 가장 작은 정수 를 구한다. 그런 가 없으면 존재하지 않음을 판정한다.
- 구한 를 출력하고, 그런 수가 없으면 단어
BRAK을 출력한다.
입력
입력의 첫 줄이자 유일한 줄에 하나의 자연수 이 주어진다 ().
출력
출력의 첫 줄이자 유일한 줄에 문제의 답인 정수 하나를 출력한다. 그런 수가 존재하지 않으면 단어 BRAK을 출력한다.