Cod sursa(job #1809962)

Utilizator RaduMirceaAndreiRadu Mircea Andrei RaduMirceaAndrei Data 19 noiembrie 2016 14:29:48
Problema Kperm Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
# include <fstream>
# define DIM 5010
# define MOD 666013
using namespace std;
ifstream fin("kperm.in");
ofstream fout("kperm.out");
int f[DIM],n,k,i,r,d,s,p,t;
int main () {
    fin>>n>>k;
    if(!k%2){
        fout<<"0\n";
        return 0;
    }
    f[0]=1;
    for(i=1;i<=n;i++)
        f[i]=(1LL*f[i-1]*i)%MOD;
    r=n%k;
    d=k-r;
    s=(1LL*f[r]*f[d])%MOD;
    t=n/k;
    p=1;
    for(i=1;i<=d;i++)
        p=(1LL*p*t)%MOD;
    s=(1LL*p*s)%MOD;
    t++;
    p=1;
    for(i=1;i<=r;i++)
        p=(1LL*p*t)%MOD;
    s=(1LL*p*s)%MOD;
    fout<<s<<"\n";
    return 0;
}