Pagini recente » Cod sursa (job #2895598) | Cod sursa (job #455884) | Cod sursa (job #253806) | Cod sursa (job #35864) | Cod sursa (job #1709569)
#include <stdio.h>
#include <stdlib.h>
#define Z 2000003
int main()
{
freopen("padure2.in","r",stdin);
freopen("padure2.out","w",stdout);
//FILE *f = fopen("padure2.in","r");
//FILE *g = fopen("padure2.out","w");
int n,m,i,j,k;
scanf("%i%i",&n,&m);
int**a,**c;
a = (int**)malloc((n)*sizeof(int*));
c = (int**)malloc((n)*sizeof(int*));
for(i=0;i<=n;i++)
{
a[i] = (int*)calloc((m),sizeof(int));
c[i] = (int*)calloc((m),sizeof(int));
}
scanf("%i",&k);
while(k--)
{
scanf("%i%i",&i,&j);
a[i-1][j-1] = 1;
}
for(i=1;i<=n;i++) c[i][0] = 1;
for(i=1;i<=m;i++) c[0][i] = 1;
for(j=1;j<n;j++)
{
for(i=1;i<m;i++)
{
if(a[i][j]==1)
{
c[i][j] = 0;
}
else
{
c[i][j] = c[i-1][j] + c[i][j-1];
}
}
}
printf("%i\n",(c[n-1][m-1])%Z);
return 0;
}