Cod sursa(job #229059)

Utilizator MciprianMMciprianM MciprianM Data 9 decembrie 2008 06:47:57
Problema Invers modular Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include<fstream>
using namespace std;
int main()
{
        long long i, n, a,p;
        ifstream f("inversmodular.in");
        f>>a>>n;
        f.close();
        p=n-2;
        i=1;
        while(p)
        {
                if( (p&1) )
                {
                        i*=a;
                        i=i%n;
                }
                a*=a;
                a=a%n;
                p>>=1;
        }
        ofstream g("inversmodular.out");
        g<<i<<'\n';
        g.close();
        return 0;
}