Cod sursa(job #1548716)

Utilizator OlivianOlivian Dan Cretu Olivian Data 11 decembrie 2015 14:29:57
Problema Factorial Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include<cstdio>
using namespace std;
long long d[104][104][25],m,n,i,j,k,x1,y1,x2,y2,x;
long long ma[105][105];
long dirx[4]={0,0,1,-1},diry[4]={-1,1,0,0};
int main()
{
    freopen("homm.in","r",stdin);
    freopen("homm.out","w",stdout);
    scanf("%lld %lld %lld",&m,&n,&k);
    for(i=1;i<=m;i++)
        for(j=1;j<=n;j++)
        scanf("%lld",&ma[i][j]);
        scanf("%lld %lld %lld %lld",&x1,&y1,&x2,&y2);
        d[x1][y1][0]=1;
    for(long long z=1;z<=k;z++)
    {
        for(i=1;i<=m;i++)
        {
            for(j=1;j<=n;j++)
            {
                if(ma[i][j]!=0) continue;
                for(long long s=0;s<4;s++) d[i][j][z]+=d[i-dirx[s]][j-diry[s]][z-1];
            }
        }
    }
    long long sum=0;
    for(i=0;i<=k;i++) sum+=d[x2][y2][i];
    printf("%lld\n",sum);
}