Cod sursa(job #2336620)

Utilizator BungerNadejde George Bunger Data 5 februarie 2019 12:35:16
Problema Ridicare la putere in timp logaritmic Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.43 kb
#include <bits/stdc++.h>

using namespace std;
ifstream fin ("lgput.in");
ofstream fout ("lgput.out");
const int MOD=1999999973;
int n,p;
int ridicare(int n,int p)
{
    if(p==0) return 1;
    if(p==1) return n%MOD;
    if(p%2==0)
    {
        int x=ridicare(n,p/2);
        return x%MOD*x%MOD;
    }
    else return n%MOD*ridicare(n,p-1);
}
int main()
{
    fin>>n>>p;
    fout<<ridicare(n,p);
    return 0;
}