华为OD机考双机位C卷 - 优选核酸检测点 (Java & Python & JS & GO & C++ & C)

优选核酸检测点

2026华为OD机试双机位C卷 - 华为OD上机考试双机位C卷

华为OD机试双机位C卷真题目录点击查看: 【全网首发】2026华为OD机位C卷 机考真题题库含考点说明以及在线OJ(OD上机考试双机位C卷)

题目描述

张三要去外地出差,需要做核酸,需要在指定时间点前做完核酸,请帮他找到满足条件的核酸检测点。

  • 给出一组核酸检测点的距离和每个核酸检测点当前的人数

  • 给出张三要去做核酸的出发时间 出发时间是10分钟的倍数,同时给出张三做核酸的最晚结束时间

  • 题目中给出的距离是整数,单位是公里,时间1分钟为一基本单位

去找核酸点时,有如下的限制:

  • 去往核酸点的路上,每公里距离花费时间10分钟,费用是10元

  • 核酸点每检测一个人的时间花费是1分钟

  • 每个核酸点工作时间都是8点到20点中间不休息,核酸点准时工作,早到晚到都不检测

  • 核酸检测结果可立刻知道

  • 在张三去某个核酸点的路上花费的时间内,此核酸检测点的人数是动态变化的,变化规则是

  1. 在非核酸检测时间内,没有人排队

  2. 8点-10点每分钟增加3人

  3. 12点-14点每分钟增加10人

  4. 18点-20点每分钟增加20人。

  5. 其他时间每5分钟增加1人。

要求将所有满足条件的核酸检测点按照优选规则排序列出 :
优选规则:

  1. 花费时间最少的核酸检测点排在前面。

  2. 花费时间一样,花费费用最少的核酸检测点排在前面。

  3. 时间和费用一样,则ID值最小的排在前面

输入描述

H1 M1
H2 M2
N
ID1 D1 C1
ID2 D2 C2
…
IDn Dn Cn

H1:当前时间的小时数。
M1:当前时间的分钟数,
H2:指定完成核算时间的小时数。
M2:指定完成核算时间的分钟数。
N:所有核酸检测点个数。
ID1:核酸点的ID值。
D1:核酸检测点距离张三的距离。
C1:核酸检测点当前检测的人数。

输出描述

N
I2 T2 M2
I3 T3 M3

N:满足要求的核酸检测点个数
I2:选择后的核酸检测点ID
T2:做完核酸花费的总时间(分钟)
M3:去该核算点花费的费用

示例1

输入

10 30
14 50
3
1 10 19
2 8 20
3 21 3

输出

2
2 80 80
1 190 100

说明

解题思路

posted @ 2026-03-08 22:47  华为od算法大师  阅读(1)  评论(0)    收藏  举报