Cod sursa(job #2285910)
Utilizator | Data | 19 noiembrie 2018 15:02:15 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 10 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.32 kb |
#include <fstream>
using namespace std;
int main()
{ ifstream cin("lgput.in");
ofstream cout("lgput.out");
unsigned long long a,b,put=1,cnt=1;
cin>>a>>b;
while(b!=1)
{if(b%2==0){a=a*a;b=b/2;}
else{put=a;a=a*a;b=b/2;
cnt=cnt*put;}}
cout<<a*cnt%1999999973;
return 0;
}