Cod sursa(job #761112)

Utilizator ioanabIoana Bica ioanab Data 24 iunie 2012 19:39:41
Problema Matrice5 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <fstream>
using namespace std;

ifstream in("matrice5.in");
ofstream out("matrice5.out");

const int mod=10007;

int fp(int a,int b)
{
	int x;
	
	if(b==0)
		return 1;
	
	if(b==1)
		return a%mod;
	
	if(b%2==0)
	{
		x=fp(a,b/2);
		return (x*x)%mod;
	}
	
	if(b%2==1)
	{
		x=fp(a,b/2);
		return ((x*x)%mod*a%mod)%mod;
	}
}
	
int main()
{
	int n,m,p,k,t,i,rez;
	in>>t;
	for(i=1;i<=t;i++)
	{
		in>>n>>m>>p>>k;
		rez=fp(k,(m-1)*(n-1)) * fp(p,n*m)%mod;
		out<<rez<<"\n";
	}
	
	return 0;
}