Cod sursa(job #228353)

Utilizator AndreiDDiaconeasa Andrei AndreiD Data 6 decembrie 2008 23:41:04
Problema Invers modular Scor 0
Compilator c Status done
Runda Arhiva educationala Marime 0.62 kb
#include <stdio.h>   
  
#define ll long long  
  
int A, N,x,mod;   
  
ll putere(ll a, ll b)
{
    
    if (b==1) return a;
    else
    if (b%2==0)
       {
            x=putere(a,b/2);
            return ((x%mod)*(x%mod))%mod;
       }
       else      
       {
            x=putere(a,b/2);
            return ((((x%mod)*(x%mod))%mod)*a)%mod;
        }
}     
  
int main()   
{  
    
    freopen("inversmodula.in", "r", stdin);   
    freopen("inversmodular.out", "w", stdout);   
    scanf("%d %d", &A, &N);   
    mod=N;
    printf("%lld\n", putere(A,N-2)%mod);   
         
    return 0;   
}