도망친 게 아니라, 빛이 드는 곳으로 갔을 뿐이야

시간 제한1초메모리 제한1024 MB

요약
설명된 반올림 기계가 유한 번의 시행으로 r을 출력하게 만드는 p^q 미만의 정수 개수를 1000000009로 나눈 나머지를 구한다.
난이도

어려움10점 중 8점

유형
수학, 정수론, 조합론, 동적 계획법
정답자
아직 제출이 없습니다

문제

"도망친 게 아니야. 빛을 찾아간 거야."

우정 2관 사감실에 있는 특별한 기계를 아는가? 해당 기계에 nn에 해당하는 값을 설정하고 수를 입력하면 아래 순서도에 따라 수를 출력하는 원리이다.

예를 들어, 기계의 nn을 33으로 설정하고, 사용자가 입력한 값이 731731이라면 아래와 같이 동작한다.

  1. 731731을 33으로 나누면 약 243.67(=x)243.67(=x)이므로 xx는 정수가 아니며, 해당 값을 반올림하면 244244이다.
  2. 기계의 aa 값은 244244로 바뀐다.
  3. 244244를 33으로 나누면 약 81.33(=x)81.33(=x)이므로 xx는 정수가 아니며, 해당 값을 반올림하면 8181이다.
  4. 기계의 aa 값은 8181로 바뀐다.
  5. 8181을 33으로 나누면 27(=x)27(=x)이므로 xx는 정수이며, 따라서 aa는 2727로 바뀌고, 해당 값이 출력된다.
  6. 기계의 동작이 종료된다.

즉, 위와 같은 설정과 입력값에 대해서는 2727이 출력되는 것이다.

똑똑한 경곽이는 세 양의 정수 pp, qq, rr을 생각하고, 기계의 nn을 pp로 설정하기로 했다. 이후, 11 이상 pqp^q 미만의 정수 중, 위 기계에 입력할 때 기계의 동작이 유한 번의 시행 내에 종료되면서 출력값이 rr이 되는 수의 개수가 궁금해졌다. 경곽이가 직접 모든 수를 넣어보기 전에 개수를 찾는 것을 도와주자.

입력

첫 번째 줄에 pp, qq, rr 이 공백으로 구분되어 주어진다.

출력

첫 번째 줄에 기계의 동작이 유한 번의 시행 내에 종료되면서 출력값이 rr이 되는 수의 개수를 1,000,000,0091,000,000,009 (1,000,000,0071,000,000,007이 아님에 유의하라)로 나눈 나머지를 출력한다.

제한

  • 2≤p≤1062\le{p}\le10^6, 1≤q≤1061\le{q}\le10^6, 0≤r≤1090\le{r}\le10^9이다.
  • pp, qq, rr은 음이 아닌 정수이다.

힌트

  • 반올림은 다음과 같이 정의된다: 어떤 수 xx를 반올림하여 yy가 되었다면, yy는 xx와 차가 가장 작은 정수(들) 중 최댓값이다.
  • 차는 다음과 같이 정의된다: xx와 yy의 차는 x−yx-y와 y−xy-x중 작지 않은 수이다.

예제1

  1. 예제 1

    입력
    4 7 0
    
    예상 출력
    2551