Pagini recente » Cod sursa (job #1018578) | Cod sursa (job #2902208) | Cod sursa (job #2329088) | Cod sursa (job #1445397) | Cod sursa (job #2903198)
#include <fstream>
using namespace std;
ifstream cin ("matrice5.in");
ofstream cout ("matrice5.out");
long long put(long long baza,long long exp)
{
long long rez;
rez=1;
while (exp!=0)
if (exp%2==0)
{
exp=exp/2;
baza=(baza*baza)%10007;
}
else
{
exp--;
rez=(rez*baza)%10007;
}
return rez;
}
int main()
{
long long n,m,p,k,t,i;
cin>>t;
for (i=1; i<=t; i++)
{
cin>>n>>m>>p>>k;
cout<<((put(p*k,(n-1)*(m-1))%10007)*(put(p,n+m-1)%10007))%10007<<"\n";
}
return 0;
}