Pagini recente » Cod sursa (job #1629550) | Cod sursa (job #2800654) | Cod sursa (job #3124234) | Cod sursa (job #1765603) | Cod sursa (job #1810172)
#include<fstream>
#define mod 666013
using namespace std;
int n, k, x, y, i, sol;
int fact[5005];
ifstream fin("kperm.in");
ofstream fout("kperm.out");
int exp(int x, int p){
int sol = 1;
for(int i = 1; i <= p; i++){
sol = sol * 1LL * x % mod;
}
return sol;
}
int main(){
fin>> n >> k;
fact[0] = 1;
for(i = 1; i <= n; i++){
fact[i] = fact[i - 1] * 1LL * i % mod;
}
if(n % k == 0){
sol = fact[k] * 1LL * exp(fact[n / k], k) % mod;
}
else{
x = n % k;
y = k - n % k;
sol = fact[x] * 1LL * fact[y] % mod * exp(n / k + 1, x) % mod * exp(n / k, y) % mod;
}
fout<< sol <<"\n";
return 0;
}