Cod sursa(job #1757811)

Utilizator georgerapeanuRapeanu George georgerapeanu Data 15 septembrie 2016 21:49:14
Problema Matrice5 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <fstream>
#define MOD 10007
using namespace std;
ifstream cin("matrice5.in");
ofstream cout("matrice5.out");
long long putere(long long b, long long e) {
    long long p = 1;
    while (e) {
        if (e%2)
            p=(p * b)%MOD;
        b=(b*b)%MOD;
        e/=2;
    }
    return p;
}

int main() {
    int tests;
    cin >> tests;
    for (int test = 1; test <= tests; test++) {
        int n, m, p, k;
        cin >> n >> m >> p >> k;
        cout << (putere((p * k) % MOD, (n - 1) * (m - 1)) * putere(p, m + n - 1)) % MOD << "\n";
    }
    return 0;
}