Pagini recente » Cod sursa (job #2164433) | Cod sursa (job #819943) | Cod sursa (job #1040643) | Cod sursa (job #793066) | Cod sursa (job #1033145)
///Ridicare la putere in timp logaritmic.
#include <fstream>
#include <cstring>
using namespace std;
const int NMAX = 10001 ; //numarul maxim de numere.
const int M = 1999999973 ;
ifstream cin ( "lgput.in" ) ;
ofstream cout ( "lgput.out" ) ;
int main()
{
unsigned int n, p ;
long long a, sol = 1;
cin >> n, cin >> p;
a = n ;
for (int i = 0 ; (1<<i) <= p; ++ i)
{
if ( ((1<<i) & p) > 0)
sol = (sol * a) % M;
a = (a * a) % M;
}
cout << sol;
cin.close() ;
cout.close() ;
return 0;
}