Cod sursa(job #1669403)
Utilizator | Data | 30 martie 2016 18:04:21 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.35 kb |
#include <iostream>
#include<fstream>
using namespace std;
long long a,b,c=1999999973,mod,aux;
int main()
{
ifstream f("lgput.in");
ofstream g("lgput.out");
f>>a>>b;
mod=1;aux=1;
while(b>1)
{
if(b%2==1)
{b--;aux=(aux*a)%c;}
else
{b/=2;a=(a*a)%c;}
}
a*=aux;
a%=c;
g<<a;
return 0;
}