Pagini recente » Cod sursa (job #646613) | Cod sursa (job #2318310) | Cod sursa (job #3254683) | Cod sursa (job #38788) | Cod sursa (job #2089520)
#include <fstream>
using namespace std;
ifstream cin("matrice5.in");
ofstream cout("matrice5.out");
int v[1005];
long long exponent(long long x, long long n)
{
long long a = 1;
while(n > 0)
{
if(n % 2 == 1)
{
a *= x % 10007;
n--;
}
x *= x % 10007;
n /= 2;
}
return a % 10007;
}
int main()
{
long long n,m,p,k,t,i;
cin >> t;
for(i = 1; i <= t; i++)
{
cin >> n >> m >> p >> k;
cout << exponent(k*p, (n-1)*(m-1)) * exponent(p, n+m-1) % 10007 << "\n";
}
return 0;
}