剑指offer JZ13 机器人的运动范围 dfs

news/2024/7/20 20:01:05 标签: c++, 深度优先

原题链接:JZ13 机器人的运动范围
在这里插入图片描述
在这里插入图片描述

class Solution {
public:
    bool fun(int x,int y,int s)
    {
        int sum=0;
        while(x)
        {
            sum+=x%10;x/=10;
        }
        while(y)
        {
            sum+=y%10;y/=10;
        }
        if(sum<=s)
            return true;
        else 
            return false;
    }
    int ans=0;
    int v[110][110];
    void  dfs(int x,int y,int threshold, int rows, int cols)
    {
        if(v[x][y])
            return ;
        if(fun(x,y,threshold) && v[x][y]==0)
        {  
            ans++;v[x][y]=1;
        }
        else 
            return ;
        if(x-1>=0)       dfs(x-1,y,threshold,rows,cols);//上
        if(x+1<=rows-1)  dfs(x+1,y,threshold,rows,cols);//下
        if(y-1>=0)       dfs(x,y-1,threshold,rows,cols);//上
        if(y+1<=cols-1)  dfs(x,y+1,threshold,rows,cols);//下
    }
        
    int movingCount(int threshold, int rows, int cols) {
        dfs(0,0,threshold,rows,cols);
        return ans;
    }
};

http://www.niftyadmin.cn/n/1265096.html

相关文章

剑指offer JZ14 剪绳子 递归

原题链接&#xff1a;剑指offer JZ14 剪绳子 我蠢到写了dfs。。。。 class Solution { public:int v[100];int cut(int n){if(n<4)return n;if(v[n])return v[n];int res0;for(int i1;i<n;i)resmax(res,i*cut(n-i));v[n]res;return v[n];}int cutRope(int number) {if(nu…

剑指offer JZ15 二进制中1的个数

原题链接&#xff1a;JZ15 二进制中1的个数 class Solution { public:int NumberOf1(int n) {int res0;while(n){n&n-1;res;}return res;} };

运行时压缩

运行时压缩数据压缩无损压缩有损压缩运行时压缩器压缩器保护器运行时压缩测试调试notepad.exe的EP代码notepad_upx.exe的EP代码参考文献数据压缩 无损压缩 无损压缩&#xff1a;经过压缩的文件能100%恢复 有损压缩 有损压缩&#xff1a;经过压缩的文件不能恢复原状&#xf…

剑指offer JZ26 树的子结构 递归

原题链接&#xff1a;剑指offer JZ26 树的子结构 递归递归递归递归 /* struct TreeNode {int val;struct TreeNode *left;struct TreeNode *right;TreeNode(int x) :val(x), left(NULL), right(NULL) {} };*/ class Solution { public:bool fun(TreeNode* pRoot1, TreeNode* …

从可执行文件中删除.reloc节区

从可执行文件中删除.reloc节区.reloc节区reloc.exe删除.reloc节区头删除.reloc节区修改IMAGE_FILE_HEADER修改IMAGE_OPTIONAL_HEADER参考文献.reloc节区 EXE形式的PE文件中“.reloc”项对运行没什么影响对DLL和SYS而言“.reloc”项则是必须的.reloc一般位于所有节区的最后 re…

剑指offer JZ27 二叉树的镜像 递归/栈

原题链接&#xff1a;JZ26 剑指offer 二叉树的镜像 递归&#xff1a; /*** struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}* };*/ class Solution { public:/*** 代码中的类名…

UPack PE头文件分析

UPack PE头文件分析Stud_PE比较PE头文件原始的PE文件头UPack后的PE文件头分析UPack的PE文件头重叠文件头IMAGE_FILE_HEADER.SizeOfOptionalHeaderIMAGE_OPTIONAL_HEADER.NumberOfRvaAndSizes重叠节区RVA to RAW导入表参考文献Stud_PE 查看UPack后的文件&#xff1a; 比较PE头…

剑指offer JZ28 对称的二叉树 递归

原题链接&#xff1a;剑指offer JZ28 对称的二叉树 递归将二叉树镜像翻转&#xff0c;递归判断两个树是否对称。 /* struct TreeNode {int val;struct TreeNode *left;struct TreeNode *right;TreeNode(int x) :val(x), left(NULL), right(NULL) {} }; */ class Solution { p…