Cod sursa(job #543467)
Utilizator | Data | 28 februarie 2011 08:40:03 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.55 kb |
#include <cstdio>
using namespace std;
#define r 1999999973
long long baza, exp, p = 1;
inline void citire()
{
freopen("lgput.in","r",stdin);
scanf("%lld %lld", &baza, &exp);
}
inline void afisare()
{
freopen("lgput.out","w",stdout);
printf("%lld", p);
}
void solve()
{
while(exp!=)
{ if(exp%2!=0)
{exp--;
p = (p*baza) % r;
}
exp /= 2;
baza = (baza*baza) % r; }
}
int main()
{
solve();
afisare();
return 0;
}