Cod sursa(job #1783753)

Utilizator dranoellenTurica Leonard-Petru dranoellen Data 19 octombrie 2016 13:35:02
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.41 kb
#include <cstdio>

using namespace std;

int main()
{
    int m, n;long long h=1999999973;
    FILE
    *in=fopen("lgput.in","r"),
    *out=fopen("lgput.out","w");
    fscanf(in,"%d%d",&n,&m);
    long long pow=n,rez=1;
    for (int i=0;1<<i<=m;++i)
    {
        if((1<<i)&m)rez=(long long)(rez%h*pow%h)%h;
        pow=(long long)(pow%h*pow%h)%h;

    }
    fprintf (out,"%d",rez);
    return 0;
}