Cod sursa(job #638580)

Utilizator mihai_floreaFlorea Mihai Alexandru mihai_florea Data 20 noiembrie 2011 23:13:46
Problema Matrice5 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.49 kb
#include <fstream>
using namespace std;

const int MOD = 10007;

int pow(int x, int n)
{
	int r = 1;
	int p = x;
	while (n)
	{
		if (n&1)
			r = (r * p) % MOD;
		n >>= 1;
		p = (p * p) %MOD;
	}
	return r;
}

int main()
{
	ifstream fin("matrice5.in");
	ofstream fout("matrice5.out");
	int T;
	fin>>T;
	while (T--)
	{
		int n, m, p, k;
		fin>>n>>m>>p>>k;
		int r = k * p % MOD;
		r = pow(r, (n-1)*(m-1));
		r = r * pow(p, n+m-1) % MOD;
		fout<<r<<"\n";
	}
	return 0;
}