Pagini recente » Cod sursa (job #415142) | Cod sursa (job #735221) | Cod sursa (job #2551008) | Cod sursa (job #2011711) | Cod sursa (job #29231)
Cod sursa(job #29231)
#include<fstream.h>
using namespace std;
long nr,n,k,a,b,aa,bb,npk,npk1;
int main(){
ifstream f("kperm.in");
ofstream g("kperm.out");
f>>n>>k;
if(k%2){
int i;
b = n%k;
a = k-b;
long tmp = 1;
for(i = 1; i <= n/k+1; i++){
tmp*=i;
tmp%=666013;
if(i==a) aa=tmp;
if(i==b) bb=tmp;
if(i==n/k) npk=tmp;
if(i==(n/k)+1) npk1=tmp;
}
npk=n/k;
for(i = 2; i<=a; i++){
npk*=npk;
npk%=666013;
}
for(i = 2; i<=b; i++){
npk1*=npk1;
npk1%=666013;
}
nr=((aa*bb)%666013);
nr*=npk;
nr%=666013;
nr*=npk1;
nr%=666013;
}
g<<nr;
f.close();
g.close();
return 0;
}