Golang | Leetcode Golang题解之第403题青蛙过河

题目:

题解:

Go 复制代码
func canCross(stones []int) bool {
    n := len(stones)
    dp := make([][]bool, n)
    for i := range dp {
        dp[i] = make([]bool, n)
    }
    dp[0][0] = true
    for i := 1; i < n; i++ {
        if stones[i]-stones[i-1] > i {
            return false
        }
    }
    for i := 1; i < n; i++ {
        for j := i - 1; j >= 0; j-- {
            k := stones[i] - stones[j]
            if k > j+1 {
                break
            }
            dp[i][k] = dp[j][k-1] || dp[j][k] || dp[j][k+1]
            if i == n-1 && dp[i][k] {
                return true
            }
        }
    }
    return false
}
相关推荐
Navigator_Z1 小时前
LeetCode //C - 1096. Brace Expansion II
c语言·算法·leetcode
笨笨没好名字2 小时前
Leetcode刷题python版第一周
python·算法·leetcode
一只齐刘海的猫2 小时前
【Leetcode】无重复字符的最长子串
算法·leetcode·职场和发展
Tisfy2 小时前
LeetCode 2130.链表最大孪生和:转数组 / 快慢指针+链表翻转(O(1))
算法·leetcode·链表·题解
青春喂了后端2 小时前
Go Sidecar Status 性能优化
开发语言·性能优化·golang
A__tao3 小时前
告别手写 Go 结构体!推荐一个支持注释解析的 YAML 转 Struct 在线工具
开发语言·后端·golang
何以解忧,唯有..3 小时前
Go 语言语句分隔符详解:分号、换行与代码规范
开发语言·golang·代码规范
Tairitsu_H3 小时前
[LC优选算法#5] 分治:快排 | 颜色分类 | 排序数组 | 第K大元素
c++·算法·leetcode·排序算法·快速排序
青山木3 小时前
Hot 100 --- 滑动窗口最大值
java·数据结构·算法·leetcode·动态规划
YHHLAI4 小时前
LeetCode 1.两数之和 | 从暴力枚举到线性优化
算法·leetcode·职场和发展