Cod sursa(job #1564100)

Utilizator alexpetrescuAlexandru Petrescu alexpetrescu Data 8 ianuarie 2016 13:19:22
Problema Matrice5 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <cstdio>
#define MOD 10007
inline int lgput(int a, int n){
    int r=1;
    while(n){
        if(n%2){
            r=(a*r)%MOD;
        }
        n/=2;
        a=(a*a)%MOD;
    }
    return r;
}
int main(){
    int t, n, m, p, k;
    FILE *fin, *fout;
    fin=fopen("matrice5.in", "r");
    fout=fopen("matrice5.out", "w");
    fscanf(fin, "%d", &t);
    for(; t; t--){
        fscanf(fin, "%d%d%d%d", &n, &m, &p, &k);
        fprintf(fout, "%d\n", (lgput(p, n*m)*lgput(k, (n-1)*(m-1)))%MOD);
    }
    fclose(fin);
    fclose(fout);
    return 0;
}