Cod sursa(job #2080513)
| Utilizator | Data | 3 decembrie 2017 00:54:42 | |
|---|---|---|---|
| Problema | Ridicare la putere in timp logaritmic | Scor | 10 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.39 kb |
#include<bits/stdc++.h>
using namespace std;
ifstream f("lgput.in");
ofstream g("lgput.out");
const unsigned long long x=1999999973;
unsigned long long lgput(unsigned long long n,unsigned long long p){
if(p==0) return 1;
if(p%2==0) return (lgput(n*n,p/2))%x;
return (lgput(n*n,(p-1)/2)*n)%x;
}
int main(){
unsigned long long n,p;f>>n>>p;
g<<lgput(n,p);
}
