Cod sursa(job #186934)

Utilizator zbarniZajzon Barna zbarni Data 29 aprilie 2008 09:05:34
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include<fstream.h>
#include<math.h>
#include<string.h>
#include<stdlib.h>
//using namespace std;
int main()
 {
  ifstream be ("lgput.in");
  ofstream ki ("lgput.out");
  const long k=1999999973;
  long long a,b,d=1;
  be>>a>>b;
  be.close();
  if (b==0)
    { ki<<1; }
  else {
    for (;b>0;b/=2)
     {
      if (b%2)
       d=(d*a)%k;
      a=(a*a)%k;
     }
      ki<<d;
   }
  ki<<'\n';
  ki.close();
  return 0;
 }