Pagini recente » Cod sursa (job #1604792) | Cod sursa (job #2224949) | Cod sursa (job #2057247) | Cod sursa (job #2097645) | Cod sursa (job #187344)
Cod sursa(job #187344)
# include <stdio.h>
# define FIN "sandokan.in"
# define FOUT "sandokan.out"
long long n,k,rez,aux,m,min,max,i,s[5001],l,ct;
long long cmmdc(long long a,long long b)
{
if (b==0) return a;
else return cmmdc(b, a%b);
}
int main()
{
freopen(FIN,"r",stdin);
freopen(FOUT,"w",stdout);
scanf("%lld%lld",&n,&k);
m=n;
while (m>=k)
{
m-=(k-1);
}
m--; n--;
k=n-m;
if (k>m)
{
max=k;
min=m;
}
else
{
max=m;
min=k;
}
rez=1;
for (i=1; i<=min; i++)
s[i]=i;
for (i=max+1; i<=n; i++)
{
ct=1;
l=i;
while (ct<min && l>1)
{
aux=cmmdc(s[ct],i);
l=l / aux;
s[ct]=s[ct] / aux;
ct++;
}
rez=(rez % 2000003 * l % 2000003) % 2000003;
}
printf("%lld",rez);
return 0;
}