当前位置: 首页 > news >正文

网站文章质检服务器一年多少钱

网站文章质检,服务器一年多少钱,中铁建设集团有限公司,公司网站设x轴上的花园范围为[0,n], 0~n这个n1个离散点上有水龙头#xff0c;第 i 个水龙头能浇水的范围为[i-ranges[i], iranges[i]]. 求能浇整个花园的最小水龙头个数。 思路#xff1a; 方法一#xff1a; greedy 先把每个水龙头能浇的区间准备好#xff0c; 用一个数组保存所有… x轴上的花园范围为[0,n], 0~n这个n1个离散点上有水龙头第 i 个水龙头能浇水的范围为[i-ranges[i], iranges[i]]. 求能浇整个花园的最小水龙头个数。 思路 方法一 greedy 先把每个水龙头能浇的区间准备好 用一个数组保存所有区间数组下标为区间起点数组内容为区间终点。 然后从左到右遍历这个数组到这里就和55题Jump Game类似了。 用一个变量canReach表示到目前的水龙头为止能浇到的最远距离。preEnd表示前一个水龙头的区间终点。 如果当前位置 preEnd说明需要开一个新的水龙头 但是如果这时canReach preEnd前一水龙头处能浇到的最远距离也无法到达当前位置后面有说明说明无法到达返回-1. 更新preEnd到canReach (canReach这时还没有更新即preEnd更新到前一个水龙头为止的最远范围). 水龙头个数1. 把canReach更新到和当前区间终点相比的较大值。 有一个特殊情况要注意下就是Example2中ranges[i]0的情况。 注意能浇水到整个花园说明不止是离散点i , i1, …能浇到i 到 i1之间的连续点部分也必须在区间中。 而ranges[i] 0 表示只能浇到离散点 i 本身。比如12点能浇到但它们之间的1.1, 1.2, …都不在浇灌范围。 所以在处理区间时canReach必须能到达当前点才算满足条件。 public int minTaps(int n, int[] ranges) {int preEnd 0;int canReach 0;int[] startEnd new int[n1];int cnt 0;for(int i 0; i n; i) {if(ranges[i] 0) continue;int start (i - ranges[i] 0 ? 0 : i - ranges[i]);int end (i ranges[i] n ? n : i ranges[i]);startEnd[start] end;}for(int i 0; i n; i) {if(i preEnd) {if(canReach preEnd) return -1;cnt ;preEnd canReach;}if(startEnd[i] canReach) canReach startEnd[i];}//cnt是前一区间满足条件时在当前区间加的最后一个区间没有下一区间去处理所以要在最后处理一下//如果preEnd能到达最后位置就不需要cnt1,如果到不了需要再cnt,preEnd更新到canReachreturn cnt (preEnd n ? 1 : 0);}方法二 DP dp[i ] 表示浇到 i 位置所需的水龙头个数。 开始的时候除了dp[0]其他全部初始化为无穷大。 还是像上面一样从左到右计算每个水龙头的浇水区间。 区间内每个点处所需的最少水龙头个数dp[ i ] min(dp[i], dp[区间的起点]1). 这是什么意义呢 因为dp[0]0, 当更新水龙头0的区间时都会以dp[0]1为准把0处的水龙头能浇到的范围内每个点处所需水龙头个数更新为1. 假设第一个区间为[0,2]更新如下 1 1 1 Inf Inf Inf 这时假如进入下一区间[2,4]那么在2的位置仍然可以保持dp[2]min(dp[2], dp[2]1)1. 到了位置3时dp[3]min(Inf,dp[2]1)就变成需要2个水龙头。 同样的如果前一范围覆盖不到后面的区间就会出现min(inf, inf1)的情况。 最后返回dp[n], 如果dp[n]为Inf, 说明无法浇到整个花园返回-1. public int minTaps(int n, int[] ranges) {final int INF 100000;int[] dp new int[n1];Arrays.fill(dp, INF);dp[0] 0;for(int i 0; i n; i) {int start (i-ranges[i] 0 ? 0 : i-ranges[i]);int end (i ranges[i] n ? n : iranges[i]);for(int j start; j end; j){dp[j] Math.min(dp[j], dp[start]1);}}return dp[n] INF ? -1 : dp[n];}
http://www.yutouwan.com/news/419358/

相关文章:

  • 石家庄外贸网站制作无法连接到wordpress站点
  • 丹东网站制作怎么登录企业邮箱
  • 网站 seo 优化建议wordpress hello dolly
  • 网站默认主页名网龙网络公司地址
  • wordpress哪个版本关键词自动优化
  • 接网站开发项目平台贵阳最新消息今天
  • 肥西做网站商标 做网站 是几类
  • 怎么做网站后期维护外贸怎么上国外的网站
  • 金泉网做网站推广安康平台
  • 网站被k十大原因公司网站内容规划
  • 自己做的网站怎么接入网页游戏app模板网站
  • 南沙网站建设wwiw跨境电商免费平台有哪些
  • 公司网站维护流程重庆营销网站建设公司
  • 惠州 企业网站建设如何网站点击率
  • 什么是云速建站服务域名证书怎么申请
  • 视频制作网站推荐重庆做网站公司
  • 网站源码程序修改提高工作效率的软件
  • 在vs中做网站乐搜做网站
  • 免费自助建设网站淘宝seo优化排名
  • 网站连接怎么做网站代理软件
  • 学校网站建设评分标准网站建设的机构
  • typecho 企业网站杭州市建设工程信用网
  • 浙江创新网站建设销售软件开发类型
  • 网站版式设计wordpress特定页面设为主页
  • 望牛墩网站建设北京网站优化关键词排名
  • 网站推广员能力要求移动网上
  • 已备案网站域名做建网站的工作一年赚几百万
  • 建立英文网站wordpress精致建站
  • 先网站开发后软件开发好wordpress二次元网站
  • 学网站开发去哪学中英文微信网站建设