Pagini recente » Cod sursa (job #2396181) | Cod sursa (job #697024) | Cod sursa (job #1818334) | Cod sursa (job #969488) | Cod sursa (job #2470646)
#include<stdio.h>
#include<string.h>
#include<algorithm>
#include<vector>
#include<set>
#include<map>
using namespace std;
#define x first
#define y second
#define MOD 10007
int rid_log(int a, int b) {
if(!b)
return 1;
int val = rid_log(a, b / 2);
if(b&1)
return (((val * val) % MOD) * a) % MOD;
return (val * val) % MOD;
}
int main () {
freopen("matrice5.in", "r", stdin);
freopen("matrice5.out", "w", stdout);
int t, n, m, p, k, i, x, y;
scanf("%d", &t);
for(i = 0; i < t; i ++) {
scanf("%d%d%d%d", &m, &n, &p, &k);
x = rid_log(p, m * n);
y = rid_log(k, (m - 1) * (n - 1));
printf("%d\n", x * y % 10007);
}
return 0;
}