Pagini recente » Cod sursa (job #1397942) | Cod sursa (job #966930) | Cod sursa (job #2812302) | Cod sursa (job #143884) | Cod sursa (job #365784)
Cod sursa(job #365784)
//Dandu-se doua numere naturale N si P, se cere sa se calculeze restul impartirii lui N^P la 1999999973.
//este vorba despre ridicare la putere in timp logaritmic
#include <fstream>
using namespace std;
int f(int b, int p, int r){
if(p==1)
return b%r;
else
if(p%2)
return ((long long)(b%r)*f(b,p-1,r) )%r;
else
{
int tmp = f(b,p/2,r);
return ((long long)tmp * tmp) %r;
}
}
int main(){
int n,p;
ifstream fin("lgput.in"); fin>>n>>p; fin.close();
ofstream fout("lgput.out"); fout<<f(n,p,1999999973); fout.close();
return 0;
}