Cod sursa(job #169212)

Utilizator andrei-alphaAndrei-Bogdan Antonescu andrei-alpha Data 1 aprilie 2008 13:53:39
Problema Sandokan Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
#include <stdio.h>
#define N 5100
#define R 2000003
int a[N],b[N],v[N];
int i,j,t,x,n,k,rez=1;
void scan()
{
	freopen("sandokan.in", "r",stdin);
	freopen("sandokan.out", "w",stdout);
	scanf("%d%d", &n,&k);
	for(i=1;i<=n;++i)
		scanf("%d", &v[i]);
}
void solve()
{
	a[0]=1;
    for (i=1;i<n;++i)
        for (j=1;j<=k;++j)
            b[j]=a[j-1]+a[j];
        for (j=1;j<=k;++j)
            a[j]=b[j]%R;
    x=n;
    while(x>=k)
	    x=x%k+x/k;
    k=1;
   for (i=n;i>n-x;i--)
    {
	    k*=i;
	    k%=2000003;
    }
	rez=a[x-1];
	printf("%d\n", rez);
}
int main()
{
	scan();
	solve();
	return 0;
}