Cod sursa(job #1620555)

Utilizator BaconDroidAndrei Katona BaconDroid Data 29 februarie 2016 10:46:20
Problema Iepuri Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.54 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("modulo.in");
ofstream g("modulo.out");
long long modulo(long long a, long long b, long long c)
{
    if(b==0)
        return 1;
    long long y=1;
    while(b)
        if(b%2==0)
        {
            a=a%c*a%c;
            b=b/2;
        }
        else
        {
            y=a%c*y%c;
            a=a%c*a%c;
            b=(b-1)/2;
        }
    return y;
}
 
int main()
{
    long long a,b,c;
    f >>a>>b>>c;
    g << modulo(a,b,c);
    return 0;
}