如果你dfs里是这么写的
if(nx>n||nx<1||ny>m||ny<1||vis[nx][ny]) continue; if(h[x][y]>h[nx][ny]) dfs(nx,ny);
请改成这样
if(nx>n||nx<1||ny>m||ny<1||h[x][y]<=h[nx][ny]) continue; if(!vis[nx][ny]) dfs(nx,ny);
我也不知道为什么