486. Predict the Winner 发表于 2022-08-11 12345678910111213141516171819class Solution { public boolean PredictTheWinner(int[] nums) { // 定义 dp[i][j] 为当前玩家分数最大化时的净得分 // dp[i][j] = Math.max(nums[i] - dp[i + 1][j], nums[j] - dp[i][j - 1]) int[][] dp = new int[nums.length][nums.length]; for (int i = 0; i < nums.length; i++) { dp[i][i] = nums[i]; } for (int i = nums.length - 2; i >= 0; i--) { for (int j = i + 1; j < nums.length; j++) { dp[i][j] = Math.max(nums[i] - dp[i + 1][j], nums[j] - dp[i][j - 1]); } } return dp[0][nums.length - 1] >= 0; }} Reference486. Predict the Winner