Cod sursa(job #1200951)
| Utilizator | Data | 23 iunie 2014 23:03:44 | |
|---|---|---|---|
| Problema | Matrice5 | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.64 kb |
#include<fstream>
#define MOD 10007
using namespace std;
ifstream f("matrice5.in");
ofstream g("matrice5.out");
int t,n,m,p,k;
inline int putere(int n,int p){
int sol = 1;
while(p > 0)
{
if(p & 1)
{
-- p;
sol = (1LL * sol * n) % MOD;
}
else
{
p >>= 1;
n = (1LL * n * n) % MOD;
}
}
return sol;
}
int main()
{
f >> t;
for(; t ; -- t)
{
f >> n >> m >> p >> k;
g << (1LL * putere((k * p) % MOD , (n - 1) * (m - 1)) * putere(p , n + m - 1)) % MOD << '\n';
}
}
