Cod sursa(job #260264)

Utilizator ConsstantinTabacu Raul Consstantin Data 16 februarie 2009 21:02:15
Problema Ridicare la putere in timp logaritmic Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include<stdio.h>
unsigned long long int n,p;
unsigned long long int putere(unsigned long long int p)
        {if(p==1)return n;
        unsigned long long int d=putere(p/2);
        if(p%2)d=d*d*n;
        else d=d*d;
        if(d>1999999973)
                d=d%1999999973;
        return d;
        }
int main(){
FILE *f=fopen("lgput.in","r");
FILE *g=fopen("lgput.out","w");
fscanf(f,"%lld%lld",&n,&p);
fprintf(g,"%lld",putere(p));
fclose(g);
return 0;}