Cod sursa(job #228570)

Utilizator AndreiDDiaconeasa Andrei AndreiD Data 7 decembrie 2008 15:11:14
Problema Invers modular Scor 0
Compilator c Status done
Runda Arhiva educationala Marime 0.68 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*x;   
       }   
       else         
       {   
            x=putere(a,b/2);   
            return x*x*a;   
        }   
}        
     
int main()      
{     
       
    freopen("inversmodular.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;      
}