Cod sursa(job #1510056)

Utilizator alex_bureaalexburea alex_burea Data 24 octombrie 2015 15:22:04
Problema Ridicare la putere in timp logaritmic Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.41 kb
#include <fstream>
using namespace std;
ifstream in("modulo.in");
ofstream out("modulo.out");
int main()
{
    int a,b,c,r=1,gigel;
    in>>a>>b>>c;
      while(b!=1)
    {
        if(b%2==0)
        {
            b=b/2;
            a=(a*a)%c;
        }
        else
        {
            b=b-1;
            r=(r*a)%c;
        }
    }
    a=a*r;
    gigel=a%c;
    out<<gigel;
    return 0;
}