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

天津网站建设哪家做得好南昌做网站哪家公司好

天津网站建设哪家做得好,南昌做网站哪家公司好,wordpress老版,网站后台修改不了题目: 给定 N 个人的出生年份和死亡年份,第 i 个人的出生年份为 birth[i],死亡年份为 death[i],实现一个方法以计算生存人数最多的年份。 你可以假设所有人都出生于 1900 年至 2000 年(含 1900 和 2000 )…

题目:

给定 N 个人的出生年份和死亡年份,第 i 个人的出生年份为 birth[i],死亡年份为 death[i],实现一个方法以计算生存人数最多的年份。

你可以假设所有人都出生于 1900 年至 2000 年(含 1900 和 2000 )之间。如果一个人在某一年的任意时期处于生存状态,那么他应该被纳入那一年的统计中。例如,生于 1908 年、死于 1909 年的人应当被列入 1908 年和 1909 年的计数。

如果有多个年份生存人数相同且均为最大值,输出其中最小的年份。

示例:

输入:
birth = [1900, 1901, 1950]
death = [1948, 1951, 2000]
输出: 1901

解题思路:

年份生存人数也就相当于是对每个年龄段的两头进行记录,找每个区间的重叠部分,返回重叠的最大值。

这里我们用到差分数组,出生年份的下标+1,死亡年份的下标-1

Code:

class Solution {
public:int maxAliveYear(vector<int>& birth, vector<int>& death) {int n = birth.size();vector<int> diff(2002, 0); // 定义差分数组diff//先将每个年龄段的两头确定出来,出生年份+1,死亡年份-1for (int i = 0; i < n; i++){int x = birth[i], y = death[i];diff[x] += 1; diff[y+1]-=1; // 表示对区间[x, y]的元素全部加一}int max = 0, idx = 0, sum(0);//计算差分数组的前缀和,每一个前缀和对应问题的每一个位置的人数for (int i = 1900; i <= 2000; ++i) {sum += diff[i];//更新生存人数最多的年份,(不加等号,就默认多个年份生存人数相同且均为最大值,输出其中最小的年份)if (max < sum){max = sum; idx = i;}}return idx;}
};
http://www.yayakq.cn/news/30815/

相关文章:

  • 响应式网站开发wordpress原始分页共
  • 网站开发需要用到哪些技术精美网页模板
  • 网站建设辅助导航wordpress发布的文章404
  • 胶州网站优化价格购物网站的建设思维导图
  • 网站维护等重写路由 wordpress
  • 网站建设安全技术苏州战斧网络科技有限公司
  • 网站主关键词智慧展厅设计公司
  • 常州网站制作价格网站不支持m.域名
  • 北京网站推广机构自己找厂家做代理卖货
  • 贵阳东方蜜蜂网站建设网站制作的重要流程图
  • 网站目录遍历中国营销协会官网
  • 网络营销教学网站网站推广怎么做流量大
  • 郓城住房和城乡建设厅网站营销型网站三要素
  • 中餐网站模板外贸网站建设是什么
  • 三网合一网站建设计划百度快照优化公司
  • 企业网站开发常用的字体图片生成链接
  • 网站需要多大空间自己做的网站出现广告
  • 哪个浏览器可以看禁止网站百度有哪些app产品
  • 网店营销策略seo与sem的区别
  • 南昌网站建设服务器广南酒店网站建设
  • 如何申请网站空间房地产网站建设策划方案
  • 做动画人设有哪些网站可以借鉴商品推广文案
  • 网站建设仟首先金手指15wordpress包邮插件
  • 南宁网站建设排名道路建设网站专题
  • 郑州东区网站建设云南文山网站建设制作
  • 今标 网站建设太原建站模板厂家
  • wordpress实现微信登录界面扬中企业网站优化哪家好
  • 百度不收录网站吗私域电商平台
  • 百度改网站描述广州比较好的网站建设公司
  • 如何自学建网站wordpress 代码结构