Cod sursa(job #641339)

Utilizator savimSerban Andrei Stan savim Data 27 noiembrie 2011 22:02:47
Problema Matrice5 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.54 kb
#include <fstream>

using namespace std;

#define prim 10007

ifstream f("matrice5.in");
ofstream g("matrice5.out");

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

    int ans = get_value(x, y >> 1);
    ans = (ans * ans) % prim;
    if (y & 1)
        ans = (ans * x) % prim;

    return ans;
}

int main() {

    int T;
    for (f >> T; T; --T) {
        int n, m, p, k;
        f >> n >> m >> p >> k;
        g << (get_value((p * k) % prim, (n - 1) * (m - 1)) * get_value(p, n + m - 1)) % prim << "\n";
    }

    return 0;
}