要求
思路
class Solution {
public:
int get(int num){
int sum=0;
while(num){
sum+=num%10;
num/=10;
}
return sum;
}
int movingCount(int m, int n, int k) {
vector<vector<bool>> vis(m,vector<bool>(n));
int sum=0;
vis[0][0]=true;
for(int i=0;i<m;++i){
for(int j=0;j<n;++j){
if(get(i)+get(j)<=k){
if(i-1>=0)vis[i][j]=vis[i][j]||vis[i-1][j];
if(j-1>=0)vis[i][j]=vis[i][j]||vis[i][j-1];
if(vis[i][j])sum+=1;
}
}
}
return sum;
}
};