Cod sursa(job #2111266)

Utilizator tziplea_stefanTiplea Stefan tziplea_stefan Data 21 ianuarie 2018 19:39:25
Problema Kperm Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <fstream>
#define LL long long
#define VAL 5005
#define MOD 666013

using namespace std;

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

LL N, K, i, j;
LL F[VAL], ANS=1;

int main()
{
    fin >> N >> K;
    if (K % 2==0)
    {
        fout << 0;
        return 0;
    }
    F[0]=1;
    for (i=1; i<=N; i++)
    {
        F[i]=F[i-1]*i;
        F[i]%=MOD;
    }
    ANS=F[N % K]*F[K-(N % K)];
    ANS%=MOD;
    for (i=1; i<=N % K; i++)
    {
        ANS*=F[N / K+1];
        ANS%=MOD;
    }
    for (i=1; i<=K-(N % K); i++)
    {
        ANS*=F[N / K];
        ANS%=MOD;
    }
    fout << ANS << '\n';
    fin.close();
    fout.close();
    return 0;
}