Cod sursa(job #1093551)

Utilizator vlady1997Vlad Bucur vlady1997 Data 28 ianuarie 2014 11:08:08
Problema Invers modular Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.76 kb
        #include <cstdio>
        using namespace std;
        bool prim (int x)
        {
            int i;
            for (i=2; i*2<=x; i++)
                if (x%i==0) return false; return true;
        }
        int main()
        {
            int a, n, i;
            freopen("inversmodular.in","r",stdin);
            freopen("inversmodular.out","w",stdout);
            scanf("%d%d",&a,&n);
            if (prim(n))
            {
                long long int x=1;
                for (i=1; i<=n-2; i++)
                {
                    x*=a; x%=n;
                }
                printf("%d",x);
            }
            else printf("-1");
            fclose(stdin);
            fclose(stdout);
            return 0;
        }