Pagini recente » Borderou de evaluare (job #810884) | Cod sursa (job #908363)
Cod sursa(job #908363)
# include <algorithm>
# include <fstream>
using namespace std;
long long n,k,fact[200000],i,lim,sol;
ifstream cin("kperm.in");
ofstream cout("kperm.out");
int main()
{
cin >> n >> k;
fact[0]=1;
for(i=1;i<=n;i++)
fact[i]=(fact[i-1]*i)%666013;
lim=n%k;
sol=0;
if(k%2)
{
sol=(fact[lim]*fact[k-lim])% 666013;
for(i=1;i<=lim;i++)
sol=(sol*fact[n/k+1])%666013;
for(i=1;i<=k-lim;i++)
sol=(sol*fact[(n/k)])%666013;
}
cout << sol;
return 0;
}