通过率 78% · 提交 9 · 通过 7
十字路口的红绿灯分为东西向(E/W)和南北向(S/N)两组,两组状态始终相反。 东西向红灯亮 R 秒,然后绿灯亮 G 秒,不断循环;南北向则相反——绿灯亮 R 秒,然后红灯亮 G 秒。 刚开始时(0秒)东西方向是红灯,南北方向是绿灯。 红绿灯切换无过渡期,红灯结束时绿灯立即开始,无需额外等待。 车辆到达路口时,遇到绿灯直接走,通过路口需要 1 秒,如遇到红灯停下来等。E/W/S/N 四个方向各有一条独立车道,各自排队,互不干扰,而同向后车必须等前车走完才能走。 求从第一辆车到达路口,到最后一辆车完全离开,共同花费多少秒,和最后一辆离开的时间是第几秒。
这类题属于算法机考高频题型中「200分 / 华为OD」方向的高频题型,通常考察对「200分 / 华为OD」的建模能力与边界条件处理。掌握本题的解题思路后,可举一反三应对同类真题方向,稳步提升机考通过率。
一维数组,包含第一辆车到达路口到最后一辆车完全离开的总耗时,以及最后一辆车离开的时间。 补充说明: 保证车辆的来向数量和到达时刻数量相等,且到达时刻按非递减顺序排列。 取值范围:
示例 1
输入示例
3 5 E,S,W,N 0,1,3,6
输出示例
9,9
周期 C = 8 秒。E/W 方向红灯条件:t % 8 < 3,S/N 方向红灯条件:t % 8 ≥ 3 所有车辆都在同个 C 周期内:
示例 2
输入示例
2 3 E,E,S 1,3,4
输出示例
5,6
周期 C = 5 秒。E/W 方向红灯条件:t % 5 < 2 ,S/N 方向红灯条件:t % 5 ≥ 2 所有车辆都在同个 C 周期内:
时间限制 1000 ms · 内存限制 256 MB
本平台为独立第三方培训机构,与华为技术有限公司无任何关联;课程的服务内容与权益以购买协议为准,学习效果因个人情况而异。「华为 OD」「华为可信」等仅为对岗位与考试方向的客观描述,相关商标归各自权利人所有。
登录后可查看你在本题的历史提交,以及每次的各用例通过情况。
© 2026 广州慕课网络科技有限公司 · 吴师兄学算法官网 版权所有