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

工程项目编号查询系统杭州seo博客

工程项目编号查询系统,杭州seo博客,商城网站怎么做推广方案,品牌网店怎么加盟Leetcode 2856. Minimum Array Length After Pair Removals 1. 解题思路2. 代码实现 题目链接:2856. Minimum Array Length After Pair Removals 1. 解题思路 这一题思路而言个人觉得还是挺有意思的,因为显然这道题没法直接用greedy的方法进行处理&am…
  • Leetcode 2856. Minimum Array Length After Pair Removals
    • 1. 解题思路
    • 2. 代码实现
  • 题目链接:2856. Minimum Array Length After Pair Removals

1. 解题思路

这一题思路而言个人觉得还是挺有意思的,因为显然这道题没法直接用greedy的方法进行处理,考察下述两个例子即可:

  1. 1,2,3,3,3
  2. 1,2,2,2,3

因此,问题就在于如何去想一个方式使得构造方式可以最大化。

而我们处理这个的思路就是将其首先按照相同元素进行聚类,然后找到某一个元素e,使其满足:

  1. 严格小于该元素的所有元素的总个数不超过总元素个数的一半;
  2. 严格小于该元素的所有元素的总个数加上上述元素的个数超过总元素个数的一半;

此时,我们可以将所有元素分成三个部分:

  1. 小于元素e的元素总数,记作a
  2. 元素e的元素总数,记作b
  3. 大于元素e的元素总数,记作c

此时我们只需要分类讨论即可:

  1. 如果满足 a + c ≤ b a+c \leq b a+cb,那么可以组成的pair的最大数目一定是 a + c a+c a+c
  2. 如果满足 a + c > b a+c > b a+c>b,那么总可以合理分配元素e用作大数和小数的方式,使得所有的数字应消尽消,此时所有的数字最多剩下一个,取决于总元数个数的奇偶性。

2. 代码实现

给出python代码实现如下:

class Solution:def minLengthAfterRemovals(self, nums: List[int]) -> int:n = len(nums)cnt = sorted(Counter(nums).items())s = 0for k, v in cnt:if s + v < n / 2:s += vcontinuer = n - s - vif s + r <= v:return v - s - relse:return n % 2

提交代码评测得到:耗时1170ms,占用内存33.8MB。

http://www.yidumall.com/news/54939.html

相关文章:

  • 免费优化网站建设东莞网站制作推广公司
  • 网站开发有哪些语言百度首页官网
  • 哪些网站可以做详情页百度电脑版
  • 可以做动画的网站都有哪些内容地推app接任务平台
  • 建设工程信息网重庆seo是啥意思
  • 设计企业网站机营销型网站建设
  • 怎么把网站做10万ip市场推广方案怎么做
  • 国内大的网站建设公司排名免费网站统计代码
  • 网站建设下什么费用建网站的详细步骤
  • 做宣传单赚钱的网站网站如何优化推广
  • wordpress 禁用谷歌字体 地图郑州专业seo推荐
  • 自己做网站模版电商培训机构哪家好
  • vue 做的网站郑州seo服务
  • 做建网站大型网站制作
  • 微信怎么做网站百度搜索排行榜前十名
  • 网站如何做视频的软件seo企业优化顾问
  • 电子商务网站策划排名优化百度
  • 做网站用什么格式做好中国经济网人事
  • 商务网站建设ppt模板web制作网站的模板
  • 成都网站制作工作室广州网站推广软件
  • 河南省网站集约化建设优化技术
  • 路由器上建网站广州竞价外包
  • 做网站一定要公司备案吗2023年时政热点事件
  • 域名解析其他网站百度100%秒收录
  • 做微网站需要什么上海百网优seo优化公司
  • 什么做网站的公司好电话营销话术
  • 如何做网站展示商品百度网盘账号登录入口
  • 用网站源码做网站网站优化包括对什么优化
  • 旅游网站模板下载百度seo关键词排名价格
  • wordpress网页无法运作太原seo快速排名