搜索

LeetCode: 486 预测赢家(区间思想递归)

gecimao 发表于 2019-07-17 01:01 | 查看: | 回复:

  给定一个表示分数的非负整数数组。 玩家1从数组任意一端拿取一个分数,随后玩家2继续从剩余数组任意一端拿取分数,然后玩家1拿,……。每次一个玩家只能拿取一个分数,分数被拿取之后不再可取。直到没有剩余分数可取时游戏结束。最终获得分数总和最多的玩家获胜。

  给定一个表示分数的数组,预测玩家1是否会成为赢家。你可以假设每个玩家的玩法都会使他的分数最大化。

  如果他选择2(或者1),那么玩家2可以从1(或者2)和5中进行选择。如果玩家2选择了5,那么玩家1则只剩下1(或者2)可选。

  解释: 玩家1一开始选择1。然后玩家2必须从5和7中进行选择。无论玩家2选择了哪个,玩家1都可以选择233。

  最终,玩家1(234分)比玩家2(12分)获得更多的分数,所以返回 True,表示玩家1可以成为赢家。

  这一题跟我之前做过的一道石子游戏题几乎是一模一样的思想,都是区间dp。大区间的问题建立在小区间的基础之上

  直接用递归实现就过了,简单一些,所以dp题本质上都是用递归思考,注意一下特判 i != 0 就ok了

  给定一个表示分数的非负整数数组。玩家1从数组任意一端拿取一个分数,随后玩家2继续从剩余数组任意一端拿取分数,然后玩家1拿,……。每次一个玩家只能拿取一个分数,分数被拿取之后不再可取。直到没有剩余分数可...博文来自:coordinate的博客

  原题链接:该题,在解法上可以使用递归与动归两种思路解决,而这里选择的使用...博文来自:一个有思想的搬运工

  给定一个表示分数的非负整数数组。玩家1从数组任意一端拿取一个分数,随后玩家2继续从剩余数组任意一端拿取分数,然后玩家1拿,……。每次一个玩家只能拿取一个分数,分数被拿取之后不再可取。直到没有剩余分数可...博文来自:hestyle的博客

  LeetCode-486.PredicttheWinner(排成一条线的纸牌博弈问题)题意暴力递归解法动态规划解法题目链接题意给定一个表示分数的非负整数数组。玩家1从数组任意一端拿取一个分数,随后玩家...博文来自:博客已搬家到GitHub,欢迎star^_^

  笔者在自己的LeetCode刷题过程中对递归与回溯的题型进行一点自己的总结,希望对递归与回溯的理解能够更深一步。...博文来自:琦小虾的代码世界

  由于乘积时会负负得正,所以需要记录一个正的最大值和一个负的最小值。状态Posdp[i]:表示以第i个元素为结尾的子序列的最大乘积状态Negdp[i]:表示第i个元素为结尾的子序列的最小乘积状态转移方程...博文来自:xutian_curry的博客

  如题将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1-gt;2-gt;4,1-gt;3-gt;4输出:...博文来自:bibigod的博客

  假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬1或2个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例1:输入:2输出:2解释:有两种方法可以爬到楼顶。1.1阶...博文来自:weixin_41931602的博客

  给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。注意:可以认为区间的终点总是大于它的起点。区间[1,2]和[2,3]的边界相互“接触”,但没有相互重叠。示例1:输入:[[1,2],...博文来自:beashaper_的博客

  给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。注意:可以认为区间的终点总是大于它的起点。区间[1,2]和[2,3]的边界相互“接触”,但没有相互重叠。示例1:输入:[[1,2],...博文来自:hestyle的博客

  给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。注意:可以认为区间的终点总是大于它的起点。区间[1,2]和[2,3]的边界相互“接触”,但没有相互重叠。示例1:输入:[[1,2],...博文来自:coordinate的博客

  原题地址:题目描述:给出一个区间的集合,请合并所有重叠的区间。示例1:输入:[...博文来自:rabbitsockx的博客

  题目给定两个由一些闭区间组成的列表,每个区间列表都是成对不相交的,并且已经排序。返回这两个区间列表的交集。(形式上,闭区间[a,b](其中aamp;lt;=b)表示实数x的集合,而a&...博文来自:burningdzb的博客

  原题地址:题目描述:给出一个无重叠的,按照区间起始端点排序的区间列表。在列表中...博文来自:暮雨凉初透

  给定两个由一些闭区间组成的列表,每个区间列表都是成对不相交的,并且已经排序。返回这两个区间列表的交集。(形式上,闭区间[a,b](其中aamp;amp;lt;=b)表示实数x的集合,而a&a...博文来自:coordinate的博客

  重叠区间问题可以总结为在坐标轴上若干个位置为(start(i),end(i))的区间,要求求解这些区间中有多少个不重叠区间,或者合并重叠的区间。leetcode有大神总结了通用模板,点这里该问题分两类...博文来自:大树叶 技术专栏

  给出一个无重叠的按照区间起始端点排序的区间列表。在列表中插入一个新的区间,你要确保列表中的区间仍然有序且不重叠(如果有必要的话,可以合并区间)。示例1:给定区间 [1,3],[6,9],插入并合并 [...博文来自:1988的博客

  题目给出一个无重叠的,按照区间起始端点排序的区间列表。在列表中插入一个新的区间,你需要确保列表中的区间仍然有序且不重叠(如果有必要的话,可以合并区间)。示例1输入:intervals=[[1,3],[...博文来自:sinat_35050808的博客

  给定一个元素都是正整数的数组A ,正整数 L 以及 R (Llt;=R)。求连续、非空且其中最大元素满足大于等于L 小于等于R的子数组个数。例如:输入:A=[2,1,4,3]L=2R=3输出...博文来自:代码屋-CODE HOUSE

  子数组之和跟结尾位置的坐标之间的映射classSolution{public:...博文来自:小堃哥的专栏

  下面例举了一些leetcode上面的一些习题,作为前一篇内容的补充。没有涉及到动态规划、分治法的题目,因为那些题目难度都比较大^^。这些题目主要讲解如何根据书上的三种类型,设计递归算法。对于递归定义,...博文来自:jsxyg63的博客

  什么是递归递归(Recursion),指在函数的定义中使用函数自身的方法,即程序的自身调用。递归一词还较常用于描述以自相似方法重复事物的过程。例如,当两面镜子相互之间近似平行时,镜中嵌套的图像是以无限...博文来自:ScarlettYellow的博客

  jquery/js实现一个网页同时调用多个倒计时(最新的)nn最近需要网页添加多个倒计时. 查阅网络,基本上都是千遍一律的不好用. 自己按需写了个.希望对大家有用. 有用请赞一个哦!nnnn//jsn...博文来自:Websites

  PHP是能让你生成动态网页的工具之一。PHP网页文件被当作一般HTML网页文件来处理并且在编辑时你可以用编辑HTML的常规方法编写PHP。最近在折腾那个安卓扫码登录的功能,然后网页端是用php的做了,...博文来自:朱培(知浅_ZLH)

  今天把本人花费一个月左右整理的600多款小程序源码发布出来,以后每个月还会持续更新,很大一部分都带有后台源码并包含有小程序上线教程,帮你分分钟上线自己的小程序,下面我们来看看目录截图,最后面会把源码目...博文来自:明礼馨德的博客

  前言本文是对之前的一篇文章Spring+SpringMVC+mybatis+Quartz整合代码部分做的一个修改和补充, 其中最大的变化就是后台框架变成了Spring Boot。本工程所用到的技术或工...博文来自:天降风云的博客

  :最后分析k n这种最常规的情况,这里有个思路,对于一个数n,它的拆分方案个数应该是等于拆出一个数k的方案个数 + 没有拆出数k的方案个数,这里的这个思路有点像01背包。 博主为啥是这样啊

本文链接:http://miamiaccounting.net/diguiguji/678.html
随机为您推荐歌词

联系我们 | 关于我们 | 网友投稿 | 版权声明 | 广告服务 | 站点统计 | 网站地图

版权声明:本站资源均来自互联网,如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

Copyright @ 2012-2013 织梦猫 版权所有  Powered by Dedecms 5.7
渝ICP备10013703号  

回顶部