Cod sursa(job #2129839)

Utilizator farmerjackandrei hodisan farmerjack Data 13 februarie 2018 10:14:28
Problema Matrice5 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <bits/stdc++.h>
#define Q 10007
using namespace std;

ifstream fin("matrice5.in");
ofstream fout("matrice5.out");

int lgp(int x,int y)
{
    if(y==1)
        return x;

    if(y==0)
        return 1;

    if(y%2==0)
        return lgp(x*x%Q,y/2);
    else
        return x*(lgp(x*x%Q,(y-1)/2)%Q)%Q;
}
int main()
{
    int t,n,m,p,k;
    fin>>t;
    while(t>0)
    {
        fin>>n>>m>>p>>k;
        fout<<lgp((k*p)%Q,(n-1)*(m-1))*lgp(p,n+m-1)%Q<<endl;
        t--;
    }
    return 0;
}