Cod sursa(job #158739)

Utilizator nimeniaPaul Grigoras nimenia Data 13 martie 2008 20:04:48
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.4 kb
#include <fstream.h>

ifstream f("lgput.in");
ofstream g("lgput.out");

long a,ac,b,c=1999999973;

long putere(long b){
	long aux;
	if (b==1) return ac;
	else {
	  if (b%2==1){aux=(putere(b-1)*ac)%c; return aux;}
	  else {aux=putere(b/2); return (aux*aux)%c;}
	}


}


int main()
{	f>>a>>b;
	ac=a%c;
	long aux;
	aux=putere(b);
	g<<aux;
	f.close();
	g.close();
	return 0;



}