Cod sursa(job #1368497)

Utilizator LolkekzorChiorean Tudor Lolkekzor Data 2 martie 2015 18:05:46
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include <fstream>
#define modate 1999999973
using namespace std;
/*
FILE* fin=fopen("lgput.in","r");
FILE* fout=fopen("lgput.out","w");
*/
ifstream fin("lgput.in");
ofstream fout("lgput.out");
long long int n, k, sum;

int main()
{
    fin>>n>>k;
    sum=1;
    while (k>1)
    {
        if (k%2==0)
            n=(n*n)%modate, k/=2;
        else
            sum=(sum*n)%modate, k--;
    }
    sum=(sum*n)%modate;

    fout<<sum;

    return 0;
}