Pagini recente » Cod sursa (job #2296075) | Cod sursa (job #1992330) | Monitorul de evaluare | Cod sursa (job #1590691) | Cod sursa (job #613445)
Cod sursa(job #613445)
Utilizator |
Mr. Noname cezar305 |
Data |
26 septembrie 2011 13:30:05 |
Problema |
Matrice5 |
Scor |
Ascuns |
Compilator |
cpp |
Status |
done |
Runda |
|
Marime |
0.57 kb |
// Mihai Gheorghe
#include <stdio.h>
int n, m, p, k;
const int mod = 10007;
int pow (int x, int p)
{
if (p == 1)
return x;
int rez = pow (x, p / 2);
rez = (rez * rez) % mod;
if (p & 1)
rez = (rez * x) % mod;
return rez;
}
int main ()
{
freopen ("matrice5.in", "r", stdin);
freopen ("matrice5.out", "w", stdout);
int t, rez;
scanf ("%d", &t);
while (t --)
{
scanf ("%d %d %d %d", &n, &m, &p, &k);
rez = pow (p, n * m);
rez = (rez * pow (k, (n - 1) * (m - 1))) % mod;
printf ("%d\n", rez);
}
return 0;
}