Cod sursa(job #1649791)
Utilizator | Data | 11 martie 2016 15:06:56 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 10 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.41 kb |
#include <fstream>
using namespace std;
int nrop;
int lgput(int baza, int exponent)
{
if(exponent==1)
return baza;
int rez=lgput(baza, exponent/2);
nrop++;
if(exponent%2==0)
{
return rez*rez;
nrop++;
}
else
{
return rez*rez*baza;
nrop+=2;
}
}
int main(){
int n, a, b;
ifstream f("lgput.in");
ofstream g("lgput.out");
f>>a>>b;
g<<lgput(a, b);
//g<<"\n"<<nrop;
}