Cod sursa(job #1415928)

Utilizator Corina1997Todoran Ana-Corina Corina1997 Data 6 aprilie 2015 21:22:05
Problema Matrice5 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <fstream>
#define MOD 10007
using namespace std;

ifstream is("matrice5.in");
ofstream os("matrice5.out");

int t;
long long n, m, p, k;
int sol;
long long Fact( long long a, long long b );

int main()
{
    is >> t;
    for ( int i = 1; i <= t; i++ )
    {
        is >> n >> m >> p >> k;
        sol = ( Fact( p, n * m ) * Fact( k, (n-1) * (m-1) ) ) % MOD;
        os << sol << '\n';
    }
    is.close();
    os.close();
    return 0;
}

long long Fact( long long a, long long b )
{
    if ( b == 1 ) return a;
    if ( b == 0 ) return 1;
    long long aux = Fact( a, b / 2 );
    aux *= aux;
    aux %= MOD;
    if ( b % 2 == 1 )
        aux *= a;
    aux %= MOD;
    return aux;
}