import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main (String args[]) throws IOException
{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String input;
StringBuilder sb=new StringBuilder(1000);
while((input=br.readLine())!=null)
{
if(input.trim().equals(""))
input=br.readLine();
long B=Long.parseLong(input.trim());
long P=Long.parseLong(br.readLine().trim());
long M=Long.parseLong(br.readLine().trim());
sb.append(bigmod(B,P,M)+"\n");
}
System.out.print(sb);
}
public static long bigmod(long b,long p,long m)
{
if(p==0)
return 1;
else if(p%2==0)
{
long temp=bigmod(b,p/2,m);
return ((temp % m)*(temp % m)) % m;
}
else
return ((b % m)*(bigmod(b,p-1,m) % m)) % m;
}
}
0 comments: