Cod sursa(job #2910875)
Utilizator | Cristian Pavel CristianPavel | Data | 25 iunie 2022 15:10:48 |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.46 kb |
#include <fstream>
using namespace std;
ifstream cin ("lgput.in");
ofstream cout ("lgput.out");
#define ct 1999999973
int exp(int x, int n)
{
int result = 1;
while(n)
{
if(n % 2 == 1)
result = 1LL * result * x % ct;
x = 1LL * x * x % ct;
n /= 2;
}
return result;
}
int main()
{
int x, n;
cin >> x >> n;
cout << exp(x, n);
cin.close();
cout.close();
return 0;
}