Cod sursa(job #1181577)

Utilizator VisanCosminVisan Tudor Cosmin VisanCosmin Data 3 mai 2014 10:06:48
Problema Kperm Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.06 kb
#include <stdio.h>

using namespace std;
unsigned long fact[1000000],k,n,rest[1000000],i,s;
FILE*f=fopen("kperm.in","r");
FILE*g=fopen("kperm.out","w");


int main()
{
    {

    fact[1]=1;
    fact[2]=2;
    fact[3]=6;
    fact[4]=24;
    fact[5]=120;
    fact[6]=720;
    fact[7]=5040;
    fact[8]=40320;
    fact[9]=362880;
    fact[10]=298735;
    fact[11]=622033;
    fact[12]=138253;
    fact[13]=465263;
    fact[14]=519565;
    fact[15]=467332;
    fact[16]=151169;
    fact[17]=571834;
    fact[18]=302817;
    fact[19]=425419;
    fact[20]=516224;
    fact[21]=184496;
    fact[22]=82834;
    fact[23]=143091;
    fact[24]=652472;
    fact[25]=641975;
    fact[26]=447765;
    fact[27]=296951;
    fact[28]=258687;
    fact[29]=405650;
    fact[30]=181266;


    }

    fscanf(f,"%lu%lu",&n,&k);
    for(i=1;i<=n;i++)
        rest[i%k]++;
    if(n%k==0) s=fact[k]%666013;
    else s=2;
    for(i=0;i<k;i++)
        s=(s*fact[rest[i]])%666013;
    fprintf(g,"%lu",s);


    fclose(f);
    fclose(g);
    return 0;
}