Cod sursa(job #1516567)

Utilizator AncaSScarlat Elena Anca AncaS Data 3 noiembrie 2015 10:29:06
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.35 kb
#include <cstdio>
FILE * f=freopen("lgput.in","r",stdin);
FILE *g=freopen("lgput.out","w",stdout);

int putere( int a, int n, int ac ) {
  if ( n == 0 )
    return ac;
  if ( n % 2 )
    ac *= a;
  return putere( a * a, n / 2, ac );
}

int main()
{
  int n, a;
   scanf("%d%d", &a, &n );
  printf("%d",putere( a, n, 1 ) );
  return 0;
}