만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

박테리아의 증식 (Small)

시간 제한5초메모리 제한512 MB

요약
A에서 시작해 x를 x^x로 B번 바꾼 결과를 C로 나눈 나머지를 구합니다.
난이도

보통10점 중 7점

유형
정수론, 재귀
정답자
아직 제출이 없습니다

문제

미생물을 연구하는 파스칼은 증식 방식이 특이한 박테리아를 발견했다. 어느 순간에 이 박테리아가 xx마리 있으면, 이상적인 환경에서는 한 시간 뒤에 xxx^x마리로 늘어난다.

정수 AA, BB, CC가 주어질 때 박테리아 AA마리가 BB시간 뒤에 몇 마리가 되는지 구하라. 한 시간이 지날 때마다 마리 수 xx는 xxx^x로 바뀌고, 이 변화가 BB번 일어난다. 답이 매우 커지므로 그 값을 CC로 나눈 나머지를 출력한다.

입력

첫째 줄에 테스트 케이스의 개수 TT가 주어진다. 이어지는 TT개의 줄에 테스트 케이스가 한 줄에 하나씩 주어진다.

각 테스트 케이스는 공백으로 구분된 정수 세 개로 이루어지며, 순서대로 AA, BB, CC이다.

제한

  • 1≤T≤5001 \le T \le 500
  • 1≤A≤10001 \le A \le 1000
  • 1≤B≤10001 \le B \le 1000
  • 1≤C≤10001 \le C \le 1000

출력

각 테스트 케이스마다 다음 형식으로 한 줄씩 출력한다.

Case #X: N

XX는 1부터 시작하는 테스트 케이스 번호이고, NN은 BB시간 뒤의 박테리아 수를 CC로 나눈 나머지이다.

예제2

  1. 예제 1

    입력
    5
    1 10 997
    2 2 997
    2 2 6
    461 1 709
    461 1000 709
    
    예상 출력
    Case #1: 1
    Case #2: 256
    Case #3: 4
    Case #4: 674
    Case #5: 461
    
  2. 예제 2

    입력
    3
    1 1 1
    2 1 100
    3 1 100
    
    예상 출력
    Case #1: 0
    Case #2: 4
    Case #3: 27