leetcode:面试题13. 机器人的运动范围(dp)

题目:

在这里插入图片描述

分析:

可能曲折到达,采用递推的方式。

代码:

int f(int a)
{
 int sum=0;
 while(a)
 {
  sum=sum+a%10;
  a=a/10;
 }
 return sum;
}
int main()
{
 int m; 
 int n; 
 int k;
 int A[m][n];
 memset(A,0,sizeof(A));
 A[0][0]=1;
 int all=1;
 for(int i=0;i<m;i++)
 {
  for(int j=0;j<n;j++)
  {
   if(A[i][j]) 
   {
    if(j+1<n&&f(i)+f(j+1)<=k)
    {
     if(A[i][j+1]==0)
     {
      A[i][j+1]=1;all++;
     }
     } 
    if(i+1<m&&f(i+1)+f(j)<=k)
    {
     if(A[i+1][j]==0)
     {
      A[i+1][j]=1;all++;
     }
     } 
   }
  }
 }
 return all;
}

结果:

在这里插入图片描述

发布了335 篇原创文章 · 获赞 235 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_42721412/article/details/105385497