Cod sursa(job #2363951)
| Utilizator | Data | 3 martie 2019 19:24:28 | |
|---|---|---|---|
| Problema | Ridicare la putere in timp logaritmic | Scor | 0 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.48 kb |
#include <cstdio>
#define MOD 1999999973
using namespace std;
long long rlap(long long x,long long n)
{
if (n==0)
return 1;
if (n==1)
return x;
if (n%2==0)
return (rlap((x*x)%MOD,n/2))%MOD;
return (x*rlap((x*x)%MOD,(n-1)/2))%MOD;
}
int main()
{
// freopen("lgput.in","r",stdin);
// freopen("lgput.out","w",stdout);
long long x,n;
scanf("%lld%lld",&x,&n);
printf("%lld",(rlap(x,n))%MOD);
return 0;
}
