Cod sursa(job #2949902)

Utilizator Iordache_CezarIordache Cezar Iordache_Cezar Data 2 decembrie 2022 10:09:23
Problema Matrice5 Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <bits/stdc++.h>
#define ll long long int
#define MOD 10007

using namespace std;
ifstream fin ("matrice5.in");
ofstream fout ("matrice5.out");

ll t, n, m, p, k;

ll putere(ll baza, ll expo);

int main()
{

    ll rez, rez2;
    fin >> t;
    while (t--)
    {
        fin >> n >> m >> p >> k;
        ll rez = putere(p*k%MOD, (n-1)*(m-1));
        ll rez2 = putere(p, n+m-1);
        rez = rez * rez2 % MOD;
        fout << rez << '\n';
    }
    return 0;
}

ll putere(ll baza, ll expo)
{
    if (expo == 0)
        return 1;
    ll ans = putere(baza, expo/2);
    ans = ans * ans % MOD;
    if (expo % 2)
        return (baza * ans) % MOD;
    else
        return ans;
}