Cod sursa(job #1255697)

Utilizator CostanMiriamCostan Miriam CostanMiriam Data 5 noiembrie 2014 01:39:10
Problema Kperm Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <fstream>
#define mod 666013

using namespace std;

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

long long n,k,fact[5010],p[5010],sol;

int main () {

    fin>>n>>k;
    if ((k*(k+1)/2)%k != 0) {
        fout<<"0\n";
        return 0;
    }
    fact[0]=1;
    for (int i=1;i<=n;i++){
        fact[i]=(fact[i-1]*i)%mod;
        p[i%k]++;
    }
    sol=(fact[n%k]*fact[k-(n%k)])%mod;
    for (int i=0;i<k;i++)
        sol=(sol*fact[p[i]])%mod;
    fout <<sol%mod;

    return 0;
}