Pagini recente » Cod sursa (job #2809110) | Cod sursa (job #2748741) | Cod sursa (job #156279) | Cod sursa (job #243422) | Cod sursa (job #1709344)
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE*fin=fopen("padure2.in","rt");
FILE*fot=fopen("padure2.out","wt");
int n,m,i,j,mus,**q,a;
fscanf(fin,"%d%d%d",&n,&m,&mus);
q=(int**)calloc(n,sizeof(int*));
for(i=0; i<n; ++i)
{
q[i]=(int*)calloc(m,sizeof(int));
}
for(i=0; i<mus; ++i)
{
fscanf(fin,"%d%d",&a,&j);
q[a-1][j-1]=-1;
}
for(i=m-1; i>=0; --i)
{
q[n-1][i]=1;
}
for(i=n-1; i>=0; --i)
{
q[i][m-1]=1;
}
for(i=n-2; i>=0; --i)
{
for(j=m-2; j>=0; --j)
{
if(q[i][j]!=-1)
{
if(q[i+1][j]==-1)
{
q[i][j]=q[i][j+1];
}
else if(q[i][j+1]==-1)
{
q[i][j]=q[i+1][j];
}
else
{
q[i][j]=q[i+1][j]+q[i][j+1];
}
}
}
}
fprintf(fot,"%d\n",q[0][0]);
for(i=0; i<n; ++i)
{
free(q[i]);
}
free(q);
fclose(fin);
fclose(fot);
return 0;
}