Cod sursa(job #1348166)

Utilizator RobyulStancu Robert Robyul Data 19 februarie 2015 15:48:59
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator c Status done
Runda Arhiva educationala Marime 0.43 kb
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
    FILE *in,*out;
    in=fopen("lgput.in","r");
    out=fopen("lgput.out","w");
    long long a,n,p;
    const int m = 1999999973;
    fscanf(in,"%lld%lldd",&a,&n);
    p=1;
    while(n!=0)
    {
        if(n%2!=0)
        {
            p=(p*a)%m;
        }
        a=(a*a)%m;
        n=n/2;
    }
    fprintf(out,"%lld",p);
    return 0;
}