빙글빙글 돌아가는 순환수

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

문제

순환수(cyclic number) 란 $n$ 자리 정수 중에서, $1$ 부터 $n$ 까지의 모든 정수와 곱했을 때 그 결과가 원래 수의 자릿수들을 회전(rotation)시킨 형태가 되는 수를 말한다. 자릿수들을 원형으로 배열하여 마지막 자리 다음이 첫 자리로 이어진다고 생각하면, 각 곱셈 결과는 원래 수와 똑같은 자릿수들을 똑같은 원형 순서로 사용하며 다만 시작 위치만 다를 수 있다.

예를 들어 $142857$ 은 순환수이며, 다음 표가 이를 보여준다:

  • 142857 × 1 = 142857
  • 142857 × 2 = 285714
  • 142857 × 3 = 428571
  • 142857 × 4 = 571428
  • 142857 × 5 = 714285
  • 142857 × 6 = 857142

각 수가 순환수인지 아닌지를 판별하는 프로그램을 작성하라.

입력

입력은 정수들의 목록이며, 한 줄에 하나씩 주어진다. 각 정수는 $2$ 자리부터 $60$ 자리까지의 길이를 가진다. 앞자리의 0은 의미가 있다. 0은 수의 일부이며 자릿수 $n$ 을 셀 때 포함된다. 따라서 01 은 두 자리 수로, 한 자리 수인 1 과는 다르다. 입력은 끝까지 읽는다.

출력

각 입력 정수에 대해 한 줄씩 출력한다. 입력에 나타난 그대로(앞자리 0을 포함하여) 수를 먼저 쓰고, 그 수가 순환수이면 is cyclic 을, 아니면 is not cyclic 을 이어서 출력한다.