Cod sursa(job #913417)

Utilizator CybiliniRadulescu Serban-Petru Cybilini Data 13 martie 2013 14:30:57
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.38 kb
#include <iostream>
#include <fstream>
using namespace std;
long long A,p;
int j;
int v[10000];
ifstream f("lgput.in");
ofstream g("lgput.out");
int main()
{f>>A>>p;
int i;
i=1;
    while(p!=1)
    { if ((p%2)==0) {p=p/2;A=A*A;}
        else {p=p-1;
        v[i]=A; i++;}
        }
for(j=1;j<=i;j++) if(v[j]) {A=A*v[j];}
    g <<A%1999999973 << "\n";
    return 0;
}