Cod sursa(job #1730100)

Utilizator ade_tomiEnache Adelina ade_tomi Data 16 iulie 2016 12:57:09
Problema Sandokan Scor 25
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include<iostream>
#include<fstream>
#define MOD  2000003
using namespace std;

long long lgput(long long baza, long long p)
{
    if(p==1)
        return baza;
    if(p%2==0)
        return lgput((baza*baza)%MOD,p/2);
    else return (baza*lgput(baza,p-1))%MOD;

}
long long n,k,sol,nr;
int main()
{

    ifstream cin("sandokan.in");
    ofstream cout("sandokan.out");
    cin>>n>>k;
    n--;
    k--;
    sol=nr=1;

    for(long long i=1;i<=n;i++)
    {

        if(i>k)
            nr=(nr*i)%MOD;
        if(i<=n-k)
            sol=(sol*i)%MOD;

    }

  //  cout<<lgput(3,3);
    sol=lgput(sol,MOD-2);
    sol=(sol*nr)%MOD;
    cout<<sol;
    return 0;
}