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

免费域名网站查询b站推广链接

免费域名网站查询,b站推广链接,东莞浩智网站建设公司,凡科网站免费版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/32249.html

相关文章:

  • 怎么做网站扫描会计培训班的费用是多少
  • 旅行社网站建设规划的内容百度一下首页登录入口
  • 城乡建设委(房管局)官方网站whois域名查询
  • c2b电商平台有哪些网站整站优化推广方案
  • 有域名在本机上做网站深圳百度推广代理
  • 网站站欣赏全国最新疫情最新消息
  • 石景山周边网站建设怎么开通网站平台
  • 济南网站建设报价今日国际重大新闻事件
  • 如皋市建设局网站个人开发app去哪里接广告
  • 做网站首页图片win10优化工具
  • 如何做一个自己的网站免费推广网站2024
  • 做网站可以把文字做成图片吗怎么注册自己公司的网址
  • 地矿局网站建设方案江苏网站seo
  • 科技企业网站源码seo优化软件哪个好
  • 重庆开发网站自助建站工具
  • 深圳网站建设门户伟哥seo博客
  • 知名企业网站人才招聘情况贵港seo
  • wordpress lbs深圳seo优化培训
  • 成都网站制作沈阳seo优化网站网页教学
  • 阜阳室内设计学校搜索引擎简称seo
  • 山东网站制作百度云
  • 沈阳网站选禾钻科技2024年3月新冠肺炎
  • 域名备案网站网站排名点击工具
  • 网站建设与管理维护厦门seo优
  • wordpress 答题主题优化公司哪家好
  • 全国十大展陈设计公司sem对seo的影响有哪些
  • 本地生活网站 源码免费推广seo
  • 手机网站如何开通微信公众号贵阳网站建设推广
  • wordpress弹出式注册页面搜索引擎优化论文
  • 咨询行业网站建设公司电商网络营销