Cod sursa(job #639156)

Utilizator marcelcodreaCodrea Marcel marcelcodrea Data 22 noiembrie 2011 17:13:46
Problema Ridicare la putere in timp logaritmic Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.45 kb
#include <iostream>
#define MOD 1999999973
using namespace std;
long long natk(int n, int k) {
    if(k == 0) return 1;
    if(k % 2 == 0) {
        long long u = natk(n, k / 2);
        return (u * u) % MOD;
    }
    else
     return (n * natk(n, k - 1)) % MOD;
}
int main()
{
    int n,k;
    freopen("lgput.in","r",stdin);
    freopen("lgput.out","w",stdout);
    scanf("%d %d",&n,&k);
    printf("%d",natk(n, k));
    return 0;
}