zoukankan      html  css  js  c++  java
  • bzoj 1616: [Usaco2008 Mar]Cow Travelling游荡的奶牛【dp】

    写了个bfs发现MLE了...
    设f[t][i][j]为在t时刻走到(i,j)的方案数,转移和bfs一样

    #include<iostream>
    #include<cstdio>
    using namespace std;
    const int N=105,dx[]={1,-1,0,0},dy[]={0,0,-1,1};
    int n,m,T,f[20][N][N],x1,y1,x2,y2;
    char c[N][N];
    inline bool ok(int x,int y)
    {
    	return x>=1&&x<=n&&y>=1&&y<=m&&c[x][y]!='*';
    }
    int main()
    {
    	scanf("%d%d%d",&n,&m,&T);
    	for(int i=1;i<=n;i++)
    		scanf("%s",c[i]+1);
    	scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
    	f[0][x1][y1]=1;
    	for(int t=1;t<=T;t++)
    		for(int i=1;i<=n;i++)
    			for(int j=1;j<=m;j++)
    				if(c[i][j]!='*')
    					for(int k=0;k<4;k++)
    						if(ok(i+dx[k],j+dy[k]))
    							f[t][i][j]+=f[t-1][i+dx[k]][j+dy[k]];
    	printf("%d
    ",f[T][x2][y2]);
    	return 0;
    }
    /*
    4 5 6
    ...*.
    ...*.
    .....
    .....
    1 3 1 5
    */
    
  • 相关阅读:
    MZOJ #72 数字
    MZOJ #71 maple做数学题
    MZOJ #70 FFF团
    luogu 2051 [AHOI2009]中国象棋
    uva 280
    uva 260
    文件的基本处理
    文件的基础
    Turtle库
    π的计算
  • 原文地址:https://www.cnblogs.com/lokiii/p/8962161.html
Copyright © 2011-2022 走看看