1,。深度搜索中 图的遍历。
八个方向,dx,dy代表位移,则可以
for(int dx=-1;dx<=1;dx++)
for(int dy=-1;dy<=1;dy++)
{
int nx=x+dx;int ny=y+dy;
if(0<=nx&&nx<N&&ny>=0&&ny<M&&f[nx][ny]=='w') dfs[nx][ny];
}
2擅长于写solve()
习惯问题,不过主函数尽量越短越好。
3广度搜索。
八个方向的第二种定义(见1)
int dx[4]={1,0,-1,0} ;
int dy[4]={0,1,0,-1};
4(题外)pair 函数
typedef pair<int ,int> p;//给pair起了个新名字 p
pair中
p.first --> p.0
p.second --> p.1
...