Pagini recente » Cod sursa (job #2398239) | Cod sursa (job #2477114) | Cod sursa (job #377429) | Cod sursa (job #1517285) | Cod sursa (job #868258)
Cod sursa(job #868258)
#include <iostream>
#include<cstdio>
using namespace std;
const int c=1999999973;
inline long long putere(int x, int p, int c)
{
long long rez = 1;
x %= c;
for( ; p; p >>= 1){
if(p & 1)
rez = (1LL * rez * x) % c;
x = (1LL * x * x) % c;
}
return 1LL * rez;
}
/*
int logput(int x,int p)
{
if(p == 0)
return 1;
else if(p == 1)
return x;
int ret = 1;
if(p % 2 == 0)
{
ret = logput(x,p/2);
ret *= ret;
ret %= mod;
}
else
{
ret = logput(x,(p-1)/2);
ret *= ret;
ret *= x;
ret %= mod;
}
return ret;
}
*/
int main()
{
freopen("lgput.in","r",stdin);
freopen("lgput.out","w",stdout);
long long x,p;
cin>>x;
cin>>p;
cout<<putere(x,p,c);
return 0;
}