Cod sursa(job #1637173)
Utilizator | Data | 7 martie 2016 15:39:32 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 10 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.32 kb |
#include <fstream>
#define m 1999999973
using namespace std;
ifstream f ("lgput.in");
ofstream g ("lgput.out");
int n, p, aux, r, i;
int main () {
f>>n>>p;
aux=n;
r=1;
for (i=0; (1<<i)<=p; i++) {
if ((1<<i&p)!=0) {
r=(r*aux)%m;
}
aux=(aux*aux)%m;
}
g<<r;
return 0;
}