Cod sursa(job #577812)

Utilizator tudorsTudor Siminic tudors Data 10 aprilie 2011 17:18:48
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda practice Marime 0.45 kb
#include <stdio.h>
#define MOD 1999999973
using namespace std;
int n,p,a,i;
long long rez,v; 
int main()
{
    rez=1;
    FILE * f;
    f=fopen("lgput.in","r");
    FILE * g;
    g=fopen("lgput.out","w");
    fscanf(f,"%d %d",&n,&p);
    v=n;
    for (i=0;(1<<i)<=p;i++)
    {
        if (((1<<i) & p)>0)   
            rez=(rez*v)%MOD;
        v=(v*v)%MOD;
    }
    fprintf(g,"%d",rez);
    fclose(f);
    fclose(g);
    return 0;
}