486. Predict the Winner

https://leetcode.com/problems/predict-the-winner/description/

解题思路:

  1. dp[j] 代表数组从index of 0 到 index of j plaryer1 比player2大多少,然后就能通过
    dp【j】是否>0 判断plaryer1大多少
  2. 核心是dp[j] = Math.max(nums[i] - dp[j], num[j] - dp[j - 1]); nums[i] 代表数组value at index of 0, nums[j] represents the arrray's value at index of j. dp[j] represents the winner value (player1 - player2) from index of i +1 to j; dp[j - 1] represents the winner value (player1 - player2) from index of i to j - 1.

class Solution {
public boolean PredictTheWinner(int[] nums) {

    int len = nums.length;
    int[] dp = new int[len];
    for(int i = len - 1; i >= 0; i--){
        for (int j = i; j < len; j++ ){
            if(i == j)
                dp[j] = nums[i];
            else
                dp[j] = Math.max(nums[i] - dp[j], nums[j] - dp[j - 1]);
        }
    }
    return dp[len - 1] >= 0;
}

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • rljs by sennchi Timeline of History Part One The Cognitiv...
    sennchi阅读 7,486评论 0 10
  • 我不是知识的生产者,我只是知识的搬运工,每天一分钟,不多不少。 昏厥是暂时性脑缺血而引起的短时间内的意识丧失,病人...
    古月美人阅读 339评论 0 0
  • Effective Objective-C 2.0笔记(接口设计/协议/框架)[https://www.jians...
    _小沫阅读 479评论 0 1
  • 傍晚回家路上,下了公交车抬头望见热电厂的大烟囱里冒出的白烟。突然一股感恩之情涌上心头,热电厂燃烧煤炭,昼夜不停的冒...
    绿水情绪疗愈阅读 1,306评论 0 2
  • 最近的一年两年三年里经历了很多。 人生八苦,生老病死爱别离,怨长久,求不得,放不下好似都经历了一番。其实我是个普通...
    伶仃零星阅读 265评论 0 0