Pagini recente » Cod sursa (job #517377) | Cod sursa (job #2940999) | Cod sursa (job #2248453) | Cod sursa (job #622020) | Cod sursa (job #163641)
Cod sursa(job #163641)
#include <fstream.h>
char v[50001];
long factorial(long a,long b){
long i,j,z=b-a+1;
long s;
long long t=1;
int ok;
for (i=a;i<=b;i++){
ok=1;
s=i;
for (j=z;j>=1;j--)
if (s%j==0&&v[j]==0)
s=s/j;
ok=0;
v[j]=1;
t=(t*s)%2000003;
}
return t;
}
int main(){
long n,k,sf,t,p,i;
ifstream fin("sandokan.in");
ofstream fout("sandokan.out");
fin>>n>>k;
for (i=1;i<=n;i++) fin>>t;
sf=n%(k-1);
if (sf==0) sf=k-1;
if (sf==1) fout<<'1'; else
if (sf==0) fout<<n; else
{
sf=sf-1;
n=n-1;
p=n-sf;
if (p>n/2) p=n-p;
fout<<factorial(p+1,n);
}
fout.close();
return 0;
}