Cod sursa(job #936575)

Utilizator diana20Dersedan Diana diana20 Data 7 aprilie 2013 19:34:23
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include<iostream>
#include<fstream>
using namespace std;
int n,p;

int pow ( int a, int b )
{
	if(b==1) return a%1999999973;
	if(b%2==0)
	{
		int r;
		r= pow(a,b/2)%1999999973;
		return r*r%1999999973;
	}
	else
	{
		int r;
		r= pow(a,b/2)%1999999973;
		return r*r*a%1999999973;
	}
}

int main()
{
	ifstream f("lgput.in");
	ofstream g("lgput.out");
	f>>n>>p;
	if(p==0) 
		g<<1;
	else
		g<<pow(n,p);
	return 0;
}