Cod sursa(job #1835273)

Utilizator 1475369147896537415369Andrei Udriste 1475369147896537415369 Data 26 decembrie 2016 17:09:18
Problema Matrice5 Scor 100
Compilator c Status done
Runda Arhiva de probleme Marime 0.65 kb
#include<stdio.h>
#define MOD 10007

long long expo(long long a, long long b){

long long result = 1;
a %= MOD;
while (b){
    if (b&1){
        result = (result * a) % MOD;
    }
    b >>= 1;
    a = (a * a) % MOD;
}
return result;
}

int main(){

FILE *file1, *file2;
long long T, N, M, P, K;

file1 = fopen("matrice5.in", "r");
file2 = fopen("matrice5.out", "w");

fscanf(file1, "%lld", &T);

while(T--){
    fscanf(file1, "%lld", &N);
    fscanf(file1, "%lld", &M);
    fscanf(file1, "%lld", &P);
    fscanf(file1, "%lld", &K);

    fprintf(file2, "%lld\n", (expo(P*K, (N-1)*(M-1)) * expo(P, M+N-1))%MOD);
}
return 0;
}