Cod sursa(job #2787971)
Utilizator | Fares Yusuf YusyBoss | Data | 24 octombrie 2021 15:09:24 |
---|---|---|---|
Problema | Matrice5 | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.53 kb |
#include <fstream>
#define MOD 10007
using namespace std;
ifstream cin ("matrice5.in");
ofstream cout ("matrice5.out");
int lgput(int base, int exp) {
int sol;
if (exp == 0)
return 1;
sol = lgput(base, exp / 2);
sol = (sol * sol) % MOD;
if (exp % 2 == 1)
sol = (sol * base) % MOD;
return sol;
}
int main() {
int t, n, m, k, p;
cin >> t;
while (t--) {
cin >> n >> m >> p >> k;
cout << (lgput(k, (n - 1) * (m - 1)) * lgput(p, n * m)) % MOD << "\n";
}
return 0;
}