Cod sursa(job #28519)

Utilizator ionescu_bogdanIonescu Bogdan-Gabriel ionescu_bogdan Data 7 martie 2007 22:13:14
Problema Kperm Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#define MOD 666013

long long n,k,sol,ss,i,r,c;

int main()
{
    freopen("kperm.in","r",stdin);
    freopen("kperm.out","w",stdout);

    scanf("%lld%lld",&n,&k);
    if (k%2==0)
    {
        printf("0\n");
        return 0;
    }
    c=n/k,r=n%k;
    sol=1;
    ss=1;
    for (i=2;i<=r;i++)
        ss=ss*i%MOD;
    sol*=ss;
    ss=1;
    for (i=2;i<=k-r;i++)
        ss=ss*i%MOD;
    sol*=ss;
    ss=1;
    for (i=2;i<=c+1;i++)
        ss=ss*i%MOD;
    for (i=1;i<=r;i++)
        sol=sol*ss%MOD;
    ss=1;
    for (i=2;i<=c;i++)
        ss=ss*i%MOD;
    for (i=1;i<=k-r;i++)
        sol=sol*ss%MOD;
    printf("%lld\n",sol);

    return 0;
}