Cod sursa(job #754971)

Utilizator Adela_BaciuAdela Baciu Adela_Baciu Data 4 iunie 2012 12:15:40
Problema Kperm Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include<cstdio>
const int MODULO=666013;
const int NMAX=5010;
int n,k;
int solve()
{
    int v[NMAX],i,x,y,sol;
    if(k%2==0)
        return 0;
    v[0]=1;
    for(i=1;i<=n;++i)
        v[i]=v[i-1]*((long long)(i%MODULO));
    x=n%k;
    y=k-x;
    sol=((long long)(v[x]*v[y]))%MODULO;
    for(i=0;i<x;++i)
        sol=((long long)(sol*v[n/k+1]))%MODULO;
    for(i=0;i<y;++i)
        sol=((long long)(sol*v[n/k]))%MODULO;
    return sol;
}
int main()
{
    freopen("kperm.in","r",stdin);
    freopen("kperm.out","w",stdout);
    scanf("%d%d",&n,&k);
    printf("%d",solve());
    return 0;
}