Cod sursa(job #1010899)

Utilizator MarghescuGabriel Marghescu Marghescu Data 15 octombrie 2013 21:15:04
Problema Ridicare la putere in timp logaritmic Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.37 kb
#include<fstream>
#define nmax 10001
#define m 1999999973
ifstream f("lgput.in");
ofstream g("lgput.out");
 
using namespace std;
 
unsigned int i,n,p;
long long a, sol=1;
 
int main()
{

    f>>n>>p;
    a=n;
    for(i=1; (1<<i)<=p; i++)
    {
        if( ((1<<i) & p) > 0 )
        	sol=(sol*a)%m;
        a=(a*a)%m;
    }
    g<<sol;
    return 0;
}