题目链接:3828. 删除子数组后的最终元素(中等)
算法原理:
解法:脑筋急转弯
1ms击败98.02%
时间复杂度O(1)
其实谁赢都无所谓,我们只要最后留下的数就行了,那么其实Alice有个很恶心的稳赢的办法,在首数字和尾数字中留个大的,其余直接全删掉,Bob压根儿都没机会出手🤣🤣🤣
有的小伙伴可能会想,让Alice留下中间那个更大的数x,那么第一回合Alice就要移除x左边或右边的一段连续区间,轮到Bob时,Bob一定会把x所在的一段连续区间移除,留下小的,所以这个x一定留不住,而且也无所谓Bob赢还是Akice赢,只要按这个游戏规则留下一个数即可,所以虽然很恶心Bob,但也雀食合情合理😂
Java代码:
class Solution { public int finalElement(int[] nums) { return Math.max(nums[0],nums[nums.length-1]); } }