Cod sursa(job #3281619)

Utilizator Grama2008Grama Andrei Teodor Grama2008 Data 2 martie 2025 20:13:38
Problema Sandokan Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <bits/stdc++.h>

using namespace std;

#define ull unsigned long long

const int MOD=2000003;

ifstream fin("sandokan.in");
ofstream fout("sandokan.out");

int main()
{
    int n,k;
    fin>>n>>k;
    ull f[5001];
    f[0]=f[1]=1;
    for (int i=2;i<5001;i++){
        f[i]=f[i-1]*i%MOD;
    }
    auto lgpow=[&](ull a, ull b){
        ull rez=1;
        while (b){
            if (b&1){
                rez=rez*a%MOD;
            }
            a=a*a%MOD;
            b>>=1;
        }
        return rez;
    };
    n--;
    k=n%(k-1);
    fout<<1LL*(f[n]*lgpow(f[n-k],MOD-2)%MOD)*lgpow(f[k],MOD-2)%MOD;
    return 0;
}