Cod sursa(job #1118158)

Utilizator bogdanpaunFMI Paun Bogdan Gabriel bogdanpaun Data 24 februarie 2014 01:25:04
Problema Ridicare la putere in timp logaritmic Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.35 kb
#include <fstream>
using namespace std;
const int m = 1999999973;

int main(){
    ifstream f("lgput.in");
    ofstream g("lgput.out");
    long long p, sol=1,a; int i;
    f>>a>>p; f.close();
    for(i=0 ; (1<<i) <= p ; ++i ){
        if( ((1<<i)&p)>0 ) sol = (sol*a)%m;
        a=(a*a)%m;            }
    g<<sol; g.close();
    return 0;
}