- 题目描述
- 思路分析
- 代码实现
点这里
思路分析dfs暴搜即可。
代码实现class Solution {
public:
int res=0;
int st[110][110];
int dx[4]={-1,0,1,0},dy[4]={0,1,0,-1};
int movingCount(int k, int n, int m) {
st[0][0]=1;
dfs(0,0,n,m,k);
return res;
}
void dfs(int x,int y,int n,int m,int k){
int t=sum(x)+sum(y);
if(t<=k){
st[x][y]=1;
res++;
}
else{
st[x][y]=2;
return;
}
for(int i=0;i<4;i++){
int nx=x+dx[i],ny=y+dy[i];
if(nx>=0&&nx=0&&ny 


