力扣 877. 石子游戏

  • 解题思路

使用动态规划阶,其中dpij 表示子数组 pij下alice与bob拿到的石子之差最小值。

  • 公式

fij = max(pi - dpi + 1j, pj - dpij- 1;

fii = pi;

  • 代码实现
c++ 复制代码
class Solution {
public:
    int n;
    int dp[510][510];
    bool stoneGame(vector<int>& p) {
        n = p.size();
        for (int i = 0; i < n; i++) dp[i][i] = p[i];
        for (int i = n - 2; i >= 0; i--) {
            for (int j = i + 1; j < n; j++) {
                dp[i][j] = max(p[i] - dp[i + 1][j],
                p[j] - dp[i][j - 1]);
            }
        }
        return dp[0][n - 1] > 0;
    }
};
相关推荐
Kina_C1 小时前
HAProxy 负载均衡算法全解析:从静态轮询到一致性哈希的实战指南
linux·算法·负载均衡·哈希算法·haproxy
月光船幽幽1 小时前
四层公理框架驱动AI健康诊断
人工智能·python·科技·算法·安全
Rabitebla2 小时前
C++ STL 之 set 详解:从底层红黑树到实际应用
开发语言·数据结构·c++·算法·leetcode
liulilittle2 小时前
无锁多生产者多消费者队列的工程实现剖析——算法、内存模型与性能
算法·多线程·并发·无锁·mpmc·lock-free
郝学胜-神的一滴2 小时前
力扣 692:巧用小顶堆高效求解前K个高频单词
java·数据结构·python·程序人生·算法·leetcode·职场和发展
科学实验家2 小时前
贪心算法:分饼干
算法·贪心算法
额,不知道写啥。2 小时前
题解:P16710 愿望
数据结构·算法
库玛西2 小时前
快速幂算法全景总结图:从“愚公移山”到“细胞分裂”
c语言·c++·笔记·算法
七号驿栈3 小时前
深入理解 MAC 消息认证算法:原理、分类与应用
算法