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

idea的网站开发登录页面做网页的

idea的网站开发登录页面,做网页的,商洛网站建设,重庆建设工程信息网 官网这里写目录标题 一、455. 分发饼干二、56. 合并区间三、53. 最大子数组和 一、455. 分发饼干 简单 假设你是一位很棒的家长#xff0c;想要给你的孩子们一些小饼干。但是#xff0c;每个孩子最多只能给一块饼干。 对每个孩子 i#xff0c;都有一个胃口值 g[i]#xff0c;这… 这里写目录标题 一、455. 分发饼干二、56. 合并区间三、53. 最大子数组和 一、455. 分发饼干 简单 假设你是一位很棒的家长想要给你的孩子们一些小饼干。但是每个孩子最多只能给一块饼干。 对每个孩子 i都有一个胃口值 g[i]这是能让孩子们满足胃口的饼干的最小尺寸并且每块饼干 j都有一个尺寸 s[j] 。如果 s[j] g[i]我们可以将这个饼干 j 分配给孩子 i 这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子并输出这个最大数值。 示例 1: 输入: g [1,2,3], s [1,1] 输出: 1 解释: 你有三个孩子和两块小饼干3个孩子的胃口值分别是1,2,3。 虽然你有两块小饼干由于他们的尺寸都是1你只能让胃口值是1的孩子满足。 所以你应该输出1。 示例 2: 输入: g [1,2], s [1,2,3] 输出: 2 解释: 你有两个孩子和三块小饼干2个孩子的胃口值分别是1,2。 你拥有的饼干数量和尺寸都足以让所有孩子满足。 所以你应该输出2. 思路 为了满足更多的小孩就不要造成饼干尺寸的浪费。 大尺寸的饼干既可以满足胃口大的孩子也可以满足胃口小的孩子那么就应该优先满足胃口大的。 可以尝试使用贪心策略先将饼干数组和小孩数组排序。 然后从后向前遍历小孩数组用大饼干优先满足胃口大的并统计满足小孩数量。 class S455:def func(self, g, s):s.sort()g.sort()result 0index len(s) - 1 # 饼干数组的下标从最后一个饼干开始for i in range(len(g) - 1, -1, -1):if index 0 and s[index] g[i]:result 1index - 1return resultr S455() g [1, 2, 3] s [1, 1] print(r.func(g, s))二、56. 合并区间 中等 以数组 intervals 表示若干个区间的集合其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间并返回 一个不重叠的区间数组该数组需恰好覆盖输入中的所有区间 。 示例 1 输入intervals [[1,3],[2,6],[8,10],[15,18]] 输出[[1,6],[8,10],[15,18]] 解释区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6]. 示例 2 输入intervals [[1,4],[4,5]] 输出[[1,5]] 解释区间 [1,4] 和 [4,5] 可被视为重叠区间。 思路所以一样的套路先排序让所有的相邻区间尽可能的重叠在一起按左边界或者右边界排序都可以处理逻辑稍有不同。 按照左边界从小到大排序之后如果 intervals[i][0] intervals[i - 1][1] 即intervals[i]的左边界 intervals[i - 1]的右边界则一定有重叠。本题相邻区间也算重贴所以是 class S56:def func(self, nums):res [] # [[1,3]]if len(nums) 0:return res # 区间集合为0直接返回nums.sort(keylambda x: x[0]) # 按照区间的左边界进行排序res.append(nums[0]) # 第一个区间可以直接放入结果中for i in range(1, len(nums)):if res[-1][1] nums[i][0]: # 发现重叠区间# 合并区间只需要更新结果集最后一个区间的右边界因为根据排序左边界已经最小的res[-1][1] max(res[-1][1], nums[i][1])else:res.append(nums[i])return resnums [[1, 3], [2, 6], [8, 10], [15, 18]]三、53. 最大子数组和 中等 给你一个整数数组 nums 请你找出一个具有最大和的连续子数组子数组最少包含一个元素返回其最大和。 子数组 是数组中的一个连续部分。 示例 1 输入nums [-2,1,-3,4,-1,2,1,-5,4] 输出6 解释连续子数组 [4,-1,2,1] 的和最大为 6 。 示例 2 输入nums [1] 输出1 示例 3 输入nums [5,4,-1,7,8] 输出23 思路如果前面数组和为负数加上当前数只会让总和变小。 所以如果前面数组和为负数直接让当前值为新的起点。从新开始遍历。 当连续和为负数的时候直接抛弃 只要是正数加上后面的数就具有增大的效果。 class S53:def func(self, nums):result 0 # 存放结果count 0 # 记录累加和for i in range(len(nums)):count nums[i]if count result: # 取区间累计的最大值相当于不断确定最大值子序终止位置result countif count 0: # 相当于重置最大子序列起始位置因为遇到附属一定拉低总和count 0return resultr S53() nums [-2, 1, -3, 4, -1, 2, 1, -5, 4] print(r.func(nums))
http://www.zqtcl.cn/news/315258/

相关文章:

  • 旅游网站对比模板免费招收手游代理
  • phpstudy网站建设教程wordpress破解管理员帐号
  • 商务网站规划与建设心得北京小程序制作首选华网天下
  • 果洛电子商务网站建设多少钱公司网站建设选什么服务器
  • 莱芜做网站公司网站建设表单教案
  • 建设酒类产品网站的好处遵义网站制作费用
  • 高端网站设计价格wordpress登录下载附件
  • 国内有名的网站设计公司wordpress缓存插件比拼
  • 网站的建设和推广直播营销策划方案范文
  • 做购物平台网站 民治百度导航地图下载
  • 东莞市主营网站建设服务机构青岛建站公司电话
  • 做网站技术wordpress漂亮手机网站模板下载
  • 网站怎么更新网页内容网络推广怎么找客户
  • 如何编写网站建设销售的心得适合装饰公司的名字
  • 有什么免费建网站网站pr查询
  • flash+xml网站模板简述网站制作的一般流程
  • 成都私人做网站建设怎么切页面做网站
  • 聊城做网站的公司论坛外链代发
  • 廊坊企业自助建站网站框架设计好后怎么做
  • 手机网站建设效果wordpress 目录改变
  • 做商城网站的项目背景图片c2750服务器做网站行吗
  • 北京市专业网站建设wordpress视频站
  • 知名网站制作公南充建设机械网站
  • 网站建设实践鉴定微商小程序制作
  • 盗用别人网站图做网站快速排名优化推广手机
  • 安徽网站建设服务平台wordpress自定义统计
  • 微网站开发方案模板建站宝盒哪个牌子好
  • 低价做网站网站制作天津
  • 成都网站推广外包门户网站素材
  • wordpress 拿站网站制作北京海淀