P1006 传纸条
题目传送门
方法一(40分):
记忆化搜索
#include<cstdio>
#include<iostream>
#include<cmath>
#include<cstring>
#include<string>
#include<algorithm>
#include<vector>
#define fre(x) freopen(#x".in","r",stdin),freopen(#x".out","w",stdout);
using namespace std;
const int MAX=2147483647;
const int N=1e2;
int m,n,a[N][N],f[N][N],ans,sum=0;
bool vis[N][N];
void dfs2(int x,int y,int step);
void input()
{
scanf("%d%d",&m,&n);
for(int i=1;i<=m;i++)
for(int j=1;j<=n;j++)
scanf("%d",&a[i][j]);
}
bool check(int x,int y)
{
if(x>=1&&x<=m&&y>=1&&y<=n) return 1;
return 0;
}
void dfs1(int x,int y,int step)
{
if(x==m&&y==n)
{
vis[1][1]=0;
vis[m][n]=1;
sum=step;
dfs2(m,n,0);
vis[1][1]=1;
vis[m][n]=0