Cod sursa(job #879494)

Utilizator SilviussMezei Silviu Silviuss Data 15 februarie 2013 15:09:11
Problema Ridicare la putere in timp logaritmic Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include <iostream>
#include <fstream>
using namespace std;

ifstream fin("lgput.in");
ofstream fout("lgput.out");

int main()
{
    unsigned int p,n,i;
    unsigned long long s;
    fin>>n>>p;
    s=n;
    for(i=2;i<=p;i*=2)
    {
        s*=s;
        if(s>=1999999973)
            s%=1999999973;
    }
    for(i=i/2;i<p;i++)
    {
        s*=n;
        if(s>=1999999973)
            s%=1999999973;
    }
    fout<<s;
}