Cod sursa(job #1701079)

Utilizator alex.cojocaruAlex Cojocaru alex.cojocaru Data 12 mai 2016 09:01:53
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator c Status done
Runda Arhiva educationala Marime 0.39 kb
#include <stdio.h>

int main () {

  FILE *fin, *fout ;

  fin = fopen ("lgput.in", "r" ) ;
  fout = fopen ("lgput.out", "w" ) ;

  int a, p, n ;
  fscanf(fin,  "%d%d", &a, &n ) ;
  p = 1 ;
  while ( n > 0 ) {
    if ( n % 2 == 1)
      p = p * a %  1999999973 ;
    a = (a * a) %  1999999973 ;
    n = ( n / 2 ) %  1999999973 ;
  }
  fprintf(fout, "%d", p );
  return 0 ;
}