Cod sursa(job #1934078)
| Utilizator | Data | 21 martie 2017 09:35:35 | |
|---|---|---|---|
| Problema | Ridicare la putere in timp logaritmic | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.42 kb |
#include <fstream>
#include <algorithm>
#include <cstring>
using namespace std;
ifstream fin("lgput.in");
ofstream fout("lgput.out");
unsigned int a,n,p;
int plg(int a,int n)
{
if(n==1)
return a;
p=plg(a,n/2);
p=((long long)p*p)%1999999973;
if(n%2==1)
{
p=((long long)p*a)%1999999973;
}
return p;
}
int main()
{
fin>>a>>n;
fout<<plg(a,n);
return 0;
}
