开发者社区> 问答> 正文

遇到一个滑雪问题问题,求解答

Jerry 造完滑雪场之后又修建了一条长度为 M 的滑雪赛道,他邀请了一些朋友来他的滑雪场进行滑雪比赛,第一名将会 Jerry 版滑雪套装!Jerry一共邀请了N个朋友来他的滑雪场参加滑雪比赛,由于他的朋友都不是专业的滑雪运动员,所以每滑一会儿雪都要停下来休息一会儿补充体力,也就是说Jerry 的第 i 个朋友在滑雪滑了 ti 秒之后,需要停下来休息 si 秒来补充体力,在休息期间位置不会变化。他们的滑雪速度都是 a m/s,只有当第一个人滑倒终点的时候才会比赛结束。请问比赛进行了多久之后会结束?前三行分别输入三个整数 N,M,A 表示 Jerry 的朋友数量,赛道的长度,Jerry的朋友滑雪速度 (2 ≤ N ≤ 1000),(1 ≤ M ≤ 10000),(1 ≤ A ≤ 100) ,M 是 A的倍数接下来 N 行,每行两个整数 ti 和 si(1 ≤ ti ≤ 100),(1 ≤ si ≤ 100)输出一个整数,表示比赛开始后经过多少秒结束

展开
收起
游客4skzfvnrxrzbi 2021-12-23 17:14:11 477 0
1 条回答
写回答
取消 提交回答
  • 可以分别计算出每个朋友滑到终点所需要的时间,比较得出其中的最小值即为比赛结束时间。要注意的一点是,如果在到达终点时刚好需要休息,那这个休息的时间是不用计算的。计算朋友滑到终点所需要的时间可以分为两部分,一部分是完整周期(一个完整周期等于朋友滑一次雪加休息一次),一部分是周期外的剩余时间。完整周期外的时间单独计算,这部分时间全部为滑雪时间。将这两部分时间加起来就可以得到一个朋友滑到终点所需要的时间。比较朋友花费的时间,得出的最小时间即为答案。 因此输入:2 100 1 [[10,5],[5,10]] 输出:145 注:第一个人,滑雪9次,休息9次,再滑1次就达到终点,比赛就结束了,一共 经历了 109+59+10=145s

    2021-12-23 19:00:10
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
1919快喝——如何打造智能零售O2O 立即下载
共享经济下的运动健身场景革命 立即下载
無人炊-不需要人就可以做厨房的事情 立即下载