Cod sursa(job #629089)

Utilizator alex_inureanalex inurean alex_inurean Data 2 noiembrie 2011 17:13:15
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator c Status done
Runda Arhiva educationala Marime 0.36 kb
#include <stdio.h>

int main(void)
{
    FILE *f,*g;
    long long p,s=1,n;
    
    f=fopen("lgput.in","r");
    g=fopen("lgput.out","w");
    
    fscanf(f,"%lld %lld",&n,&p);
    while(p)
    if(p%2==0) 
    {
	n=(n*n) % 1999999973;
	p=p/2;
    }
    else
    {
	s=(s*n) % 1999999973;
	n=(n*n) % 1999999973;
	p=p/2;
    }
    fprintf(g,"%lld",s);    
    return 0;
}