Cod sursa(job #313838)

Utilizator DjSefuWrong name DjSefu Data 9 mai 2009 21:23:00
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.39 kb
#include<fstream>
#define mod 1999999973

using namespace std;

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

typedef unsigned long long ll;

ll k(ll a,ll p)
{ 
	if(p==1) return a%mod;
	ll v=k(a,p>>1);
	v=v%mod;
	v=v*v;
	v=v%mod;
	if(p&1) return (v*a)%mod;
	return v;
}

int main()
{
	ll a,p;
	f>>a>>p;
	g<<k(a,p)<<"\n";
	f.close();
	g.close();
	return 0;
}