LC #45 JS

效率低下 最起码容易看得懂?将就看吧

/*** @param {number[]} nums* @return {number}*/
var jump = function(nums) {let len = nums.length;if(len <= 1){return 0;}function calPossibleLastStep(index){let res = [];if(index >= len){return res;}if(index <= 0){return [0];}for(let i = index - 1; i >= 0; --i){if(i + nums[i] >= index){res.push(i);}}return res;}function calStepNum(lastIndex, countAlready = 0, curMin = Number.MAX_VALUE, minList = [], curList = []){// console.log('lastIndex:' + lastIndex + ', countAlready:' + countAlready);if(countAlready + 1 >= curMin){return curMin;}let minCount = -1;if(minList.some((el, index) => {if(el.index === lastIndex){minCount = el.count;return true;}return false;})){if(minCount > -1){if(minCount < countAlready + 1){return curMin;}}}curList.push({index: lastIndex,count: countAlready,});let res = calPossibleLastStep(lastIndex);if(res.includes(0)){// console.log('answer:' + (countAlready + 1));return countAlready + 1;}else{if(countAlready + 1 >= curMin){return curMin;}let min = curMin;for(let i = res.length - 1; i >= 0; i--){let r = calStepNum(res[i], countAlready + 1, min, minList, curList);if(r < min){minList = curList;min = r;}}return min;}}let result = calStepNum(len - 1);return result;
};
复制代码

转载于:https://juejin.im/post/5b238d896fb9a00e5326d545

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/277790.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python之爬虫(四)之 Requests库的基本使用

什么是Requests Requests是用python语言基于urllib编写的&#xff0c;采用的是Apache2 Licensed开源协议的HTTP库如果你看过上篇文章关于urllib库的使用&#xff0c;你会发现&#xff0c;其实urllib还是非常不方便的&#xff0c;而Requests它会比urllib更加方便&#xff0c;可以…

https://blog.csdn.net/cscscscsc/article/details/50

https://blog.csdn.net/cscscscsc/article/details/50899522转载于:https://blog.51cto.com/7237876/2129682

linux下安装mysql说明

1.msyql下载 mysql-5.6.33 通用版&#xff0c;linux64位&#xff0c;官方下载地址&#xff1a;http://dev.mysql.com/downloads/mysql/5.6.html#downloads。也可以通过命令下载&#xff1a;wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.33-linux-glibc2.5-x86…

win8下cocos2dx-3.2+VS2012环境配置及项目创建

这是本人CSDN的第一篇博客&#xff0c;因为假期在学校做实训项目接触到了cocos2dx&#xff0c;觉得是一个特别适用强大&#xff0c;有不错的可移植性&#xff08;虽然可移植性不错&#xff0c;但实际上写好的游戏往Android上移植&#xff0c;我的队友废了好大劲。。。&#xff…

Android通过透明度设置背景变暗

变暗 WindowManager.LayoutParams lpgetWindow().getAttributes(); lp.alpha0.3f; getWindow().addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND); getWindow().setAttributes(lp);变为原来的样子 WindowManager.LayoutParams lpgetWindow().getAttributes(); lp.alpha1.…

BZOJ4557:[JLOI2016/SHOI2016]侦察守卫——题解

https://www.lydsy.com/JudgeOnline/problem.php?id4557 小R和B神正在玩一款游戏。这款游戏的地图由N个点和N-1条无向边组成&#xff0c;每条无向边连接两个点&#xff0c;且地图是连通的。换句话说&#xff0c;游戏的地图是一棵有N个节点的树。 游戏中有一种道具叫做侦查守卫…

Mac系统下Homebrew的安装和使用Homebrew安装python

这里向大家推荐一个东西&#xff0c;Mac下很好用的东西&#xff0c;叫做Homebrew。刚开始接触Mac的时候&#xff0c;我也没听过这个东西&#xff0c;但装了以后真的觉得&#xff0c;TMD太碉堡了。引用一句话&#xff1a;Homebrew is the easiest and most flexible way to inst…

JS中的深拷贝

前言&#xff1a;我们经常会遇到想要将一个对象为己所用&#xff0c;但又不能污染原对象的需求&#xff0c;这就涉及到了js对象的深拷贝。 比如说在VUE的子组件中&#xff0c;父组件传过来的数据中若是有对象&#xff0c;而子组件需要用父组件的数据进行初始化并且有另做他用的…

Mac下cocos2dx-3.2+Xcode环境配置和项目创建

这是有关环境配置的第二篇教程&#xff0c;第一篇讲的是win8下的环境配置。这里我们使用C。所有如果你用其他语言如Lua和js进行cocos2d开发&#xff0c;那么可以再找一找其他的配置文档。下面要说Mac os 下 cocos2dx-3.2Xcode的环境配置&#xff0c;这里我使用的是Xcode 5.1.1。…

对flex-grow和flex-shrink的深入理解

flex弹性布局&#xff0c;如果子元素宽度之和大于或者小于父元素宽度&#xff0c;空间就会存在剩余和不够&#xff0c;flex默认不换行&#xff0c;除非设置flex-wrap,那么这种情况下&#xff0c;有两个重要的属性&#xff0c;flex-grow和flex-shrink. flex-grow默认值为0&#…

拿下京东榜单第五首战告捷,看联想手机如何上演王者归来

618对于手机行业来说是一个非常重要的日子&#xff0c;京东618上销量的高低在某种程度上就代表了该手机品牌在国内市场的影响力&#xff0c;以及在行业中所处的位置。因此&#xff0c;今年的618各大手机品牌卯足了劲在京东平台上展开较量。荣耀、小米、VIVO、OPPO等手机品牌相继…

Mac OS使用技巧之一:查看Finder中的.bash_profile等系统隐藏文件

作为一个程序员&#xff0c;经常要配置变量&#xff0c;可能要更改hosts文件&#xff0c;或者你闲着没事儿寻找homebrew给你安装的东西在什么地方。Mac OS的内核是Unix&#xff0c;Linux/Unix系统出于系统安全和用户安全的考虑&#xff0c;会把一些与系统相关的文件隐藏&#x…

java.lang.NumberFormatException: For input string: “name”

背景&#xff1a;action中查询出list数据需要在前台进行显示&#xff0c;但根据主键在数据库中查询出的数据list中含有熟悉alist属性为配置表&#xff0c;且支持用户多选&#xff0c;前端通过el表达式显示 前台界面为&#xff1a;<c:forEach items"${list}" var&q…

win8下cocos2dx3.2移植android平台及代码打包APK

cocos2dx程序不能只在VS2012下运行&#xff0c;迟早是要搬运到Android和IOS上的。Windows下移植IOS平台先搁下不说比较困难&#xff0c;而且只有越狱的苹果机才可以运行&#xff0c;而且毕竟IOS高端、小众。这里主要讲一下移植Android&#xff0c;windows下cocos2dx打包成APK和…

【转】用Fiddler做抓包分析详解

1.为什么是Fiddler? 抓包工具有很多&#xff0c;小到最常用的web调试工具firebug&#xff0c;达到通用的强大的抓包工具wireshark.为什么使用fiddler?原因如下&#xff1a; a.Firebug虽然可以抓包&#xff0c;但是对于分析http请求的详细信息&#xff0c;不够强大。模拟http…

读《活着》----余华

这本书所处时代背景尽管与我生活的时代背景不同&#xff0c;但是我仍是被人物的生活所打动。这本书为我们描述了一个拥有一百亩的阔少爷徐福贵因为赌而输掉全部家产&#xff0c;到经历将自己的父亲&#xff0c;母亲&#xff0c;儿子&#xff0c;女儿&#xff0c;女媳&#xff0…

常用数据库连接和diriver以及默认端口

sqlserver默认端口号为&#xff1a;1433 URL:"jdbc:microsoft:sqlserver://localhost:1433;DatabaseNamedbname" DRIVERNAME:"com.microsoft.jdbc.sqlserver.SQLServerDriver"; mysql 默认端口号为&#xff1a;3306 URL:jdbc:mysql://localhost:3306/…

Mac下cocos2dx3.2移植android平台详细教程

本文是cocos2dx移植android的第二篇教程&#xff0c;笔者深深感觉&#xff0c;cocos2dx移植android平台是永远的痛啊。。。下面讲一下笔者花费一个周研究的Mac OS下的cocos2dx3.2android配置首先要准备的东西&#xff08;1&#xff09;下载cocos2dx3.2 http://www.cocos2d-x.o…

robotframework(12)修改用户密码(从数据库查询短信验证码)

一、testcase&#xff1a;修改用户密码需要6个参数&#xff08;短信验证码、设置的新密码、用户已登录的userid及用户唯一标识、接口校验码、被修改的手机号&#xff09;&#xff0c;故先准备这些参数 二、用户登录请求&#xff0c;&#xff08;获取userid、用户唯一标识&#…

Mac OS使用技巧之二:修改变量Path解决android: command not found

前一阵子&#xff0c;一直在搞Mac OS和win8下cocos2dx移植android平台的方法。一步步从无到有的慢慢摸索出来。最近发现了一个小问题&#xff0c;有关环境变量配置的写下来分享给大家。就是我们在windows8下查看已有android SDK的版本&#xff0c;需要在CMD里面输入&#xff1a…