给你一个整数数组 nums。
玩家 1 和玩家 2 基于这个数组设计了一个游戏。
玩家 1 和玩家 2 轮流进行自己的回合,玩家 1 先手。开始时,两个玩家的初始分值都是 0 。
每一回合,玩家从数组的 任意一端 取一个数字(即,nums[0] 或 nums[nums.length - 1]),取到的数字将会从数组中 移除(数组长度减 1 )。玩家选中的数字将会加到他的得分上。当数组中没有剩余数字可取时,游戏结束。
如果玩家 1 能成为赢家,返回 true 。
注意,如果两个玩家得分相等,同样认为玩家 1 是游戏的赢家。你可以假设每个玩家的玩法都会使他的分数最大化。
示例 1:
输入:nums = [1,5,2]
输出:false
解释:
[5, 2]。玩家 2 取 5,剩下 2 给玩家 1。[1, 5]。玩家 2 取 5,剩下 1 给玩家 1。1 + 2 = 3,玩家 2 得到 5。玩家 1 永远无法获胜,所以返回 false。示例 2:
输入:nums = [1,5,233,7]
输出:true
解释:
[5,233,7]。然后玩家 2 必须在 5 和 7 之间选择,无论玩家 2 选择哪个数字,玩家 1 在下一次回合都可以取 233。true。
提示:
1 <= nums.length <= 200 <= nums[i] <= 107