今天看到一题罗志祥的多人运动笑死了,赶紧来解答一下子~

点上面链接可以看原题,里面还有C++的解法~(但我tmd看不懂)

顺便推荐star一下LeetCode题解~

我把题目复制到这里来~

已知小猪每晚都要约好几个女生到酒店房间。每个女生 i 与小猪约好的时间由 [si , ei]表示,其中 si 表示女生进入房间的时间, ei 表示女生离开房间的时间。由于小猪心胸开阔,思想开明,不同女生可以同时存在于小猪的房间。请计算出小猪最多同时在做几人的「多人运动」。

**Input : [ [0 , 30] , [5 , 10], [15, 20] ] **

OutPut :最多同时有两个女生的「三人运动」

一句话总结

求出每个时间刻度有几人在场即可。

过程

前情提要

今天突然想看一下three.js,但是跟着文档走没遇到什么问题,所以就来做题吧~

重点

话不多说(已经说了很多了)直接看代码吧~

注释写的超详细~

// 首先输入的是一个二维数组
let input = [[0, 30], [5, 10], [15, 20]];
function getPigTime(input) {// 新数组,用来记录每个人在猪猪房里的每个时间点let newArr = new Array();// 遍历inputinput.forEach((item) => {// 遍历input里每个妹子的时间for (let i = item[0]; i <= item[1]; i++) {// 每个存在的时间点,人物数量+1,每个尚未计算的时间点,赋给新数组一个初始值1newArr[i] ? (newArr[i]++) : (newArr[i] = 1);}});// 新数组中最大的数字就是同一时间多人在线的人物数量。注意这里小猪不算人return Math.max(...newArr);
}
console.log(getPigTime(input));

尾巴

  1. 生成item[0]到item[1]的连续整数数组:
input.forEach( (item)=> {// 转换成数组newArr.push(Array.from(new Array(item[1] + 1).keys()).slice(item[0]));/* 解释上面的狗屎代码:new Array(item[1]+1).keys()是一个array iterator外面套上Array.from()就生成一个item[1]个元素的从0到item[1]的数组再接上slice(item[0])切掉从0到item[0]的数字后就剩下从item[0]开始到item[1]结束的数组了然后把这个数组push到newArr里面,以便forEach结束后继续用...*/
}
  1. 我发现复杂度忘得差不多了,明天看看吧。

  2. 话说上面的代码第一个循环参考了大佬的,我自己写的没这么简化~

JavaScript解答罗志祥多人运动题相关推荐

  1. 万人千题第一阶段报告【待继续总结】

    学习内容概况 目的:找编程和做题的手感 具体训练内容:万人千题第一阶段题库(思维导图),同时还有一些之前做过的题 练习后总结 具体细节之后补充为文字版,概况思维导图如下: 编程细节 位运算使用技巧 d ...

  2. 使用JavaScript解答2018第九届蓝桥杯C/C++省赛A组试题

    大三时参加过第七届蓝桥杯个人赛及团队赛,转眼已经两年,最近看了看第九届蓝桥杯试题,打算用JavaScript实现一下. 题目1 标题:分数 1/1 + 1/2 + 1/4 + 1/8 + 1/16 + ...

  3. Codeforces上通过数超过5W人的题

    Codeforces上通过数超过5W人的题 共32题:1000分4题,800分28题. 编号 题号 题名 分数 通过数 1 4A Watermelon 800 x193501 2 71A Way To ...

  4. 【论文笔记】基于强化学习的机器人手臂仿人运动规划方法

    文章目录 摘要 关键词 0 引言 学者研究 阶段一:采集运动数据,分析运动过程特征 阶段二:设计仿人变量.建立仿人标准和约束 阶段三:用智能算法提升仿人运动机器人性能 本文工作 1 问题描述及方法架构 ...

  5. 【万人千题】誓要成为刷题界的卷王王中王

    <暗里刷题>(改编自<暗里着迷>)   兄弟们,由于需要,得开始接触二次元了,明年想办法进驻b站.承诺会更新算法系列视频教程,十年内保证更新完所有算法视频.有兴趣的可以提前关注 ...

  6. 想参加多人运动?并行流(ParallelStream)模式教你成为时间管理大师

    目的 提高程序运行效率, 减少响应时间或者增加吞吐量 例子代码 最近罗*祥, 福报厂P12 jf 引起了大家的关注, 二位都是因为私人生活问题, 搞的微博程序员天天加班加服务器, 让我等吃了一个又一个 ...

  7. 万人千题 | 九日集训 | 英雄算法联盟合伙人 | 三年之约 | B站直播早起粉丝团

    图中红色字为动态数字,会随时修改 文章目录 一.万人千题 1.简介 2.详述 二.九日集训 1.简介 2.参与人群 2.如何参与 3.集训周期 4.集训内容 5.如何参加 三.英雄算法联盟合伙人 1. ...

  8. 万人千题打卡第六期——习题题解

    描述: 给定一个整数,写一个函数来判断它是否是 3 的幂次方.如果是,返回 true :否则,返回 false . 整数 n 是 3 的幂次方需满足:存在整数 x 使得 n == 3x 来源:力扣(L ...

  9. JavaScript/jQuery考试中的编译题

    学校的一次JavaScript/jQuery考试中的编译题 以下是我给出的答案: 1.用jQuery编程实现获取选中复选框值的函数abc. <body> <input type=&q ...

最新文章

  1. linux系统下设置oracle开机自动启动
  2. java方法声明无效_java 方法声明无效 需要返回类型
  3. 李彦宏喊你来坐出租车,无人驾驶的那种;百度还要继续搞芯片,联手华为的那种...
  4. 蓝点lilac / ContextMenuManager:win10右键菜单清理工具
  5. [读书笔记]TCP/IP详解V1读书笔记-1
  6. 浏览器从输入URL到页面渲染过程 ——页面渲染流程
  7. java日期时间各种变换及处理
  8. 微信小程序——极点日历使用方法
  9. RR调度(Round-robin scheduling)简单介绍
  10. java recv failed,java.sql.SQLException: I/O Error: Software caused connection abort: recv failed
  11. JavaScript---去除字符串中的空格(五种方式,总有一种适合你)
  12. go语言遍历目录中的文件
  13. alot英文怎么读_iot中文读什么,AloT怎么读,Iot是什么意思中文翻译
  14. 北京地区机动车限行交强险保费减免方案
  15. Spinnaker第七节—Orca代码详解
  16. PHP 2014 CHM手册
  17. 安装Win7系统,提示缺少所需的CD/DVD驱动器设备驱动程序
  18. 服务器站点地址是什么意思,云服务器地址是什么意思
  19. SQL查询语句的使用
  20. MPB:中科院城环所杨军组-​​基于DNA宏条形码的水体微型真核生物群落测序建库方法...

热门文章

  1. 用友系统管理找不到服务器,用友软件登录不到服务器
  2. 圈复杂度Cyclomatic complexity
  3. .编译实现输入千米数,输出显示英里数,1英里=1.60934千米(用符号常量)
  4. android修改猎豹浏览器,猎豹Android浏览器设计或编码缺陷导致远程拒绝服务漏洞 | wooyun-2015-0121433| WooYun.org...
  5. 祝贺数字化学会•第三届数据分析应用大赛圆满落幕,恭喜以下队伍获奖
  6. 5G时代下的创新技术和应用场景
  7. 微信小程序清除缓存/退出登录
  8. 计算机专业好的二本c类院校,2017二本C类大学排名文科
  9. TXAA,MSAA,SMAA,FXAA
  10. 计算机通信属于那一类商标,计算机 电池充电器 衡器 量具 眼镜 无线电通信音响设备商标注册属于哪一类?...