Cod sursa(job #1125908)

Utilizator gabrielvGabriel Vanca gabrielv Data 26 februarie 2014 20:10:29
Problema Ridicare la putere in timp logaritmic Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.39 kb
#include <cstdio>

using namespace std;

int main()
{
    //freopen("expozitie.in","r",stdin);
    //freopen("expozitie.out","w",stdout);

    long long Sol,P,N,K,D;

    scanf("%lld%lld%lld",&N,&D,&K);

    P = (N - K * D);

    Sol = 1;

    while(P)
    {
        if(P&1)
            Sol *= D;
        P>>=1;
        D*=D;
    }

    printf("%d\n",Sol);

    return 0;
}