Cod sursa(job #2240009)
Utilizator | Tudose Sanziana TudoseSanziana | Data | 12 septembrie 2018 10:04:01 |
---|---|---|---|
Problema | Matrice5 | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.52 kb |
#include <fstream>
using namespace std;
ifstream in("matrice5.in");
ofstream out("matrice5.out");
const int MOD = 10007;
int t, n, m, k, p;
int exp(int a, int b)
{
if(b == 0)
return 1;
int c = exp(a, b / 2);
if(b & 1)
return c * c % MOD * a % MOD;
else
return c * c % MOD;
}
int main()
{
in >> t;
while(t--)
{
in >> n >> m >> p >> k;
out << (exp(p, n * m) * exp(k, (n - 1) * (m - 1))) % MOD << '\n';
}
return 0;
}