Cod sursa(job #2264536)

Utilizator BogdanGhGhinea Bogdan BogdanGh Data 20 octombrie 2018 10:20:10
Problema Sandokan Scor 0
Compilator cpp-32 Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>

using namespace std;

ifstream f("sandokan.in");
ofstream g("sandokan.out");
long long  mod=2000003,n,k,a[10001],i;
long long invmod(int b)
{
    long long x0=1,x1=0,aux=mod,r0=b,r1=mod,r,q,x;
    while(r1!=0)
    {
        r=r0%r1;
        q=r0/r1;
        x=x0-q*x1;
        x0=x1;
        x1=x;
        r0=r1;
        r1=r;
    }
    if(x0<0)x0+=aux;
    return x0;

}
long long comb(int n,int k)
{
    long long i,rez=1,sol=1;
    for(i=1;i<=n;i++)
        rez=rez*i%mod;
    for(i=1;i<=k;i++)
        sol=sol*i%mod;
    for(i=1;i<=n-k;i++)
        sol=sol*i%mod;
    return rez*invmod(sol)%mod;
}

int main()
{
    f>>n>>k;
    for(i=1;i<=n;i++)
        f>>a[i];
    g<<comb(n,k);
    return 0;
}