Cod sursa(job #2987968)
| Utilizator | Data | 3 martie 2023 11:03:09 | |
|---|---|---|---|
| Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.42 kb |
#include <bits/stdc++.h>
using namespace std;
const unsigned long long Mod = 1999999973;
ifstream in("lgput.in");
ofstream out("lgput.out");
unsigned long long f;
int put(unsigned long long a, unsigned long long b){
if(b==0) return 1;
if (b==1) return a;
f = put(a, b/2);
return ((f*f%Mod) * put(a, b%2))%Mod;
}
int main()
{
unsigned long long x,y,z;
in >> x >> y;
out << put(x, y) % Mod;
}
