C语言 | Leetcode C语言题解之第55题跳跃游戏

题目:

题解:

cpp 复制代码
#define max(a, b) (((a) > (b)) ? (a) : (b))

bool canJump(int* nums, int numsSize){
    int cover = 0;

    int i;
    // 只可能获取cover范围中的步数,所以i<=cover
    for(i = 0; i <= cover; ++i) {
        // 更新cover为从i出发能到达的最大值/cover的值中较大值
        cover = max(i + nums[i], cover);

        // 若更新后cover可以到达最后的元素,返回true
        if(cover >= numsSize - 1)
            return true;
    }

    return false;
}
相关推荐
norlan_jame3 小时前
C-PHY与D-PHY差异
c语言·开发语言
琢磨先生David3 小时前
Day1:基础入门·两数之和(LeetCode 1)
数据结构·算法·leetcode
czy87874754 小时前
除了结构体之外,C语言中还有哪些其他方式可以模拟C++的面向对象编程特性
c语言
m0_531237174 小时前
C语言-数组练习进阶
c语言·开发语言·算法
超级大福宝4 小时前
N皇后问题:经典回溯算法的一些分析
数据结构·c++·算法·leetcode
Charlie_lll5 小时前
力扣解题-88. 合并两个有序数组
后端·算法·leetcode
菜鸡儿齐5 小时前
leetcode-最小栈
java·算法·leetcode
Frostnova丶6 小时前
LeetCode 1356. 根据数字二进制下1的数目排序
数据结构·算法·leetcode
Z9fish7 小时前
sse哈工大C语言编程练习23
c语言·数据结构·算法
代码无bug抓狂人7 小时前
C语言之单词方阵——深搜(很好的深搜例题)
c语言·开发语言·算法·深度优先