Cod sursa(job #636338)
Utilizator | Carabet Cosmin Andrei cosmin79 | Data | 19 noiembrie 2011 19:00:39 |
---|---|---|---|
Problema | Matrice5 | Scor | 100 |
Compilator | cpp | Status | done |
Runda | .com 2011 | Marime | 0.5 kb |
#include <stdio.h>
#define MOD 10007
int t,n,m,p,k,nr,rez;
int lgput(int baza,int exp)
{
int act=1;
while (exp)
{
if (exp & 1)
act=(act*baza)%MOD;
baza=(baza*baza)%MOD;
exp>>=1;
}
return act;
}
int main()
{
freopen("matrice5.in","r",stdin);
freopen("matrice5.out","w",stdout);
scanf("%d",&t);
while (t--)
{
scanf("%d%d%d%d",&n,&m,&p,&k);
nr=(p*k)%MOD;
rez=(lgput(nr,m-1)*p)%MOD;
rez=(lgput(rez,n-1)*lgput(p,m))%MOD;
printf("%d\n",rez);
}
return 0;
}