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

山东省建设部网站有没有推广app的平台

山东省建设部网站,有没有推广app的平台,设计装饰公司排名,wordpress图片上传灌溉花园的最少水龙头数目 题目描述 在 x 轴上有一个一维的花园。花园长度为 n,从点 0 开始,到点 n 结束。 花园里总共有 n 1 个水龙头,分别位于 [0, 1, …, n] 。 给你一个整数 n 和一个长度为 n 1 的整数数组 ranges ,其中…

灌溉花园的最少水龙头数目

题目描述

在 x 轴上有一个一维的花园。花园长度为 n,从点 0 开始,到点 n 结束。

花园里总共有 n + 1 个水龙头,分别位于 [0, 1, …, n] 。

给你一个整数 n 和一个长度为 n + 1 的整数数组 ranges ,其中 ranges[i] (下标从 0 开始)表示:如果打开点 i 处的水龙头,可以灌溉的区域为 [i - ranges[i], i + ranges[i]] 。

请你返回可以灌溉整个花园的 最少水龙头数目 。如果花园始终存在无法灌溉到的地方,请你返回 -1 。

样例

样例输入

n = 5, ranges = [3,4,1,1,0,0]
n = 3, ranges = [0,0,0,0]

样例输出

1
解释:
点 0 处的水龙头可以灌溉区间 [-3,3]
点 1 处的水龙头可以灌溉区间 [-3,5]
点 2 处的水龙头可以灌溉区间 [1,3]
点 3 处的水龙头可以灌溉区间 [2,4]
点 4 处的水龙头可以灌溉区间 [4,4]
点 5 处的水龙头可以灌溉区间 [5,5]
只需要打开点 1 处的水龙头即可灌溉整个花园 [0,5] 。

-1
解释:即使打开所有水龙头,你也无法灌溉整个花园。

提示

  • 1<=n<=1041 <= n <= 10^41<=n<=104
  • ranges.length==n+1ranges.length == n + 1ranges.length==n+1
  • 0<=ranges[i]<=100 <= ranges[i] <= 100<=ranges[i]<=10

思路

大的总问题可以化为相同类型的子问题,可以使用动态规划。且不仅仅可以使用动态规划,还可以使用贪心思想,因为在相同类型的子问题中,可以取其最优解。

代码实现

动态规划

class Solution {public int minTaps(int n, int[] ranges) {int[][] arr = new int[n+1][2];for(int i = 0; i <= n; i++){arr[i][0] =  Math.max(0, i - ranges[i]);arr[i][1] = Math.min(n, i + ranges[i]);}Arrays.sort(arr, (a, b) -> a[0] - b[0]);int[] dp = new int[n+1];Arrays.fill(dp, Integer.MAX_VALUE);dp[0] = 0;for(int[] a : arr){if(dp[a[0]] == Integer.MAX_VALUE) return -1;for(int i = a[0]; i <= a[1]; i++) dp[i] = Math.min(dp[i], dp[a[0]] + 1);}return dp[n];}
}

贪心思想

class Solution {public int minTaps(int n, int[] ranges) {int[] right = new int[n+1];for(int i = 0; i <= n; i++) right[i] = i;for(int i = 0; i < ranges.length; i++){int start = Math.max(0, i - ranges[i]);int end = Math.min(n, i + ranges[i]);right[start] = Math.max(right[start], end);}int last = 0, res = 0, pre = 0;for(int i = 0; i < n; i++){last = Math.max(last, right[i]);if(i == last) return -1;if(i == pre){res++;pre = last;}}return res;}
}
http://www.yidumall.com/news/65244.html

相关文章:

  • 舟山 网站制作上海seo推广方法
  • 威海外贸网站建设电话uc浏览网页版进入
  • 可以做pos机的网站成都互联网公司排名
  • 做企业网站通常哪找素材代写企业软文
  • 网站赌博做任务佣金违法营销型网站方案
  • 北京专业网站制作服务详细的营销推广方案
  • 义乌网站建设推广百度识图在线入口
  • 51zwd一起做网站网站制作免费
  • 开发员给我用织梦做的网站爱站工具查询
  • 网站建设公司网站百度帐号个人中心
  • wordpress开发文档pdf成都sem优化
  • wordpress 图库主题简述什么是seo及seo的作用
  • 中国有多少家做外贸网站设计的公司优化大师官网
  • 安康市教育云平台seo博客大全
  • 手机企业网站雅思培训机构哪家好机构排名
  • 网站质作百度seo是啥意思
  • 哪家做企业网站推广方案
  • unity做网站网页设计与制作考试试题及答案
  • wordpress建设下载网站哈尔滨seo整站优化
  • 网站建设 淄博品牌推广案例
  • 科技节小发明小制作线上seo关键词优化软件工具
  • 太原建站模板源码可以推广发广告的app
  • 企业网站建设机构推广赚佣金
  • 自己本地可以做网站服务器吗企业网站推广效果指标分析
  • 衡水做wap网站多少钱网站建设与管理就业前景
  • 邢台做网站推广服务百度竞价排名利弊
  • 合肥网络推广软件系统seo批量建站
  • 请人做网站多少钱云搜索app
  • 外贸电商网站模板广东疫情最新消息
  • 沈阳网站制作定制策划佛山网站优化排名推广