Golang | Leetcode Golang题解之第312题戳气球

题目:

题解:

Go 复制代码
func maxCoins(nums []int) int {
    n := len(nums)
    rec := make([][]int, n + 2)
    for i := 0; i < n + 2; i++ {
        rec[i] = make([]int, n + 2)
    }
    val := make([]int, n + 2)
    val[0], val[n+1] = 1, 1
    for i := 1; i <= n; i++ {
        val[i] = nums[i-1]
    }
    for i := n - 1; i >= 0; i-- {
        for j := i + 2; j <= n + 1; j++ {
            for k := i + 1; k < j; k++ {
                sum := val[i] * val[k] * val[j]
                sum += rec[i][k] + rec[k][j]
                rec[i][j] = max(rec[i][j], sum)
            }
        }
    }
    return rec[0][n+1]
}

func max(x, y int) int {
    if x > y {
        return x
    }
    return y
}
相关推荐
阿Y加油吧17 分钟前
面试硬核双杀!合并 K 个升序链表 + LRU 缓存|力扣高频手撕原题全解
数据结构·leetcode·链表
老鼠只爱大米18 分钟前
LeetCode经典算法面试题 #70:爬楼梯(朴素递归、记忆化递归、动态规划等六种实现方案详解)
算法·leetcode·动态规划·递归·斐波那契·矩阵快速幂·爬楼梯
低调的JVM1 小时前
Golang下kafka可观测数据采集组件Otelsarama详解
golang·kafka·可观测·opentelemetry
旖-旎1 小时前
位运算(两整数之和)(3)
c++·算法·leetcode·位运算
x_xbx11 小时前
LeetCode:34. 在排序数组中查找元素的第一个和最后一个位置
数据结构·算法·leetcode
愣头不青15 小时前
96.不同的二叉搜索树
数据结构·算法·leetcode
golang学习记16 小时前
Go 实时批处理:让数据库少挨点打 [特殊字符]
开发语言·数据库·golang
alphaTao17 小时前
LeetCode 每日一题 2026/3/23-2026/3/29
服务器·windows·leetcode
不光头强18 小时前
力扣78子集题解
算法·leetcode·深度优先
Magic--18 小时前
经典概率题:飞机座位分配问题(LeetCode 1227)超详细解析
算法·leetcode·职场和发展