Cod sursa(job #1078082)

Utilizator chiriacandrei25Chiriac Andrei chiriacandrei25 Data 11 ianuarie 2014 23:49:46
Problema Matrice5 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <cstdio>
#define MOD 10007

using namespace std;

inline long long PutLog(long long x, long long p)
{
    long long put=1;
    while(p)
    {
        if(p&1)
        {
            --p;
            put=(put*x)%MOD;
        }
        p/=2;
        x=(x*x)%MOD;
    }
    return put%MOD;
}

int main()
{
    long long N,M,P,T,K,sol;
    freopen ("matrice5.in","r",stdin);
    freopen ("matrice5.out","w",stdout);
    scanf("%lld", &T);
    while(T--)
    {
        scanf("%lld%lld%lld%lld", &N,&M,&P,&K);
        sol=(PutLog(K, (N-1)*(M-1)) * PutLog(P, N*M))%MOD;
        printf("%lld\n", sol);
    }
    return 0;
}