Pagini recente » Borderou de evaluare (job #1567139) | Cod sursa (job #612251) | Cod sursa (job #3165995) | Cod sursa (job #1538553) | Cod sursa (job #1473011)
#include <fstream>
#define Xp 10007
#define ll long long
using namespace std;
ifstream f("matrice5.in");
ofstream g("matrice5.out");
int t,n,m,k,p;
int put(ll a,ll b)
{
int x=1;
while(b) {if(b&1) x=(x*a)%Xp; a=(a*a)%Xp; b>>=1;}
return x;
}
int main()
{
f>>t;
while(t--)
{
f>>n>>m>>p>>k;
int A=put(k*p,(n-1)*(m-1)),B=put(p,n+m-1);
g<<(A*B)%Xp<<'\n';
}
return 0;
}