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;
}
相关推荐
moeyui7055 分钟前
LeetCode 380:Insert Delete GetRandom O(1) 题解和一些延伸
算法·leetcode·职场和发展
圣保罗的大教堂7 分钟前
leetcode 3689. 最大子数组总值 I 中等
leetcode
退休倒计时28 分钟前
【每日一题】LeetCode 15. 三数之和 TypeScript
数据结构·算法·leetcode·typescript
小欣加油1 小时前
leetcode3689最大子数组总值I
c++·算法·leetcode·职场和发展·贪心算法
caimouse1 小时前
Reactos 第 5 章 进程与线程 — 5.12 进程挂靠
c语言·windows
Byte Wizard2 小时前
C语言编译与链接
c语言
人道领域2 小时前
【LeetCode刷题日记】90.子集Ⅱ--- 归纳题解
java·开发语言·leetcode
社交怪人3 小时前
【判断整除】信息学奥赛一本通C语言解法(题号1046)
c语言
tianyuanwo3 小时前
C语言编译完全指南:从工具链到跨架构静态与动态编译
c语言·动态编译·静态编译
小欣加油3 小时前
leetcode121买卖股票的最佳时机
数据结构·c++·算法·leetcode·职场和发展