Cod sursa(job #2628013)
Utilizator | Data | 13 iunie 2020 21:40:34 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 0 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.41 kb |
#include <bits/stdc++.h>
#define pb push_back
#define ll unsigned long long int
using namespace std;
ifstream fin("euclid3.in");
ofstream fout("euclid3.out");
const int m = 1999999973;
int a,b,rez;
int main()
{
fin >> a >> b;
rez=1;
for(int i=0;(1<<i)<=b;i++)
{
if(1<<i&b)
rez=(rez*a)%m;
a=(a*a)%m;
}
fout << rez;
return 0;
}