萌新提问关于判断出界的问题(一种可以,另一种不行)
  • 板块P1162 填涂颜色
  • 楼主_xing_
  • 当前回复2
  • 已保存回复2
  • 发布时间2021/5/3 10:16
  • 上次更新2023/11/4 23:48:51
查看原帖
萌新提问关于判断出界的问题(一种可以,另一种不行)
429560
_xing_楼主2021/5/3 10:16

inline void dfs(int p,int q){

int i;

if(p<0||p>n+1||q<0||q>n+1||a[p][q]!=0)

return;

a[p][q]=1;

for(i=0;i<4;i++) dfs(p+fx[i][0],q+fx[i][1]); }

如果是这一种判断就可以递归下去,但如果不行,返回后又重新递归为什么可以?

if(xx >= 1 && xx <= n && yy >= 1 && yy <= n && a[xx][yy] == 0)

dfs(xx,yy);

如果我在递归之前判断它能否递归就不可以,这是为什么?

2021/5/3 10:16
加载中...