Cod sursa(job #2111265)
| Utilizator | Data | 21 ianuarie 2018 19:38:33 | |
|---|---|---|---|
| Problema | Kperm | Scor | 90 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.59 kb |
#include <fstream>
#define LL long long
#define VAL 5005
#define MOD 666013
using namespace std;
ifstream fin("kperm.in");
ofstream fout("kperm.out");
LL N, K, i, j;
LL F[VAL], ANS=1;
int main()
{
fin >> N >> K;
F[0]=1;
for (i=1; i<=N; i++)
{
F[i]=F[i-1]*i;
F[i]%=MOD;
}
ANS=F[N % K]*F[K-(N % K)];
ANS%=MOD;
for (i=1; i<=N % K; i++)
{
ANS*=F[N / K+1];
ANS%=MOD;
}
for (i=1; i<=K-(N % K); i++)
{
ANS*=F[N / K];
ANS%=MOD;
}
fout << ANS << '\n';
fin.close();
fout.close();
return 0;
}
