Cod sursa(job #3266493)
Utilizator | Data | 8 ianuarie 2025 21:53:13 | |
---|---|---|---|
Problema | Ridicare la putere in timp logaritmic | Scor | 10 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include <bits/stdc++.h>
using namespace std;
const int MOD = 1999999973;
int32_t lgput(int a, int b) {
int ans = 1;
while(b != 0) {
if(b % 2 == 1) {
ans *= a;
ans %= MOD;
b /= 2;
}
a *= a;
a %= MOD;
b /= 2;
}
return ans;
}
int32_t main(void) {
ofstream cout("lgput.out");
ifstream cin("lgput.in");
int a, b;
cin >> a >> b;
cout << lgput(a, b);
}