Pagini recente » Cod sursa (job #494786) | Borderou de evaluare (job #1796673) | Cod sursa (job #576535) | Borderou de evaluare (job #1599511) | Cod sursa (job #1692401)
#include <fstream>
#define MOD 1999999973
using namespace std;
ifstream fin("lgput.in");
ofstream fout("lgput.out");
int n,p;
int ridicare( long long x , long long n )
{
if( n == 1 )
return x % MOD ;
else if( n % 2 == 1 )
return (x % MOD )*ridicare( x * x % MOD , (n-1)/2 % MOD ) ;
else if( n % 2 == 0 )
return ridicare( x*x % MOD , n/2 % MOD ) ;
return 0;
}
int main()
{
fin >> n >> p ;
fout << ridicare( n , p );
return 0;
}