列车问题求助

qq_43300131 2021-04-21 01:06:01
列车有N个不同长度的车厢,隧道长度为L。发车时,有几个特定车厢内的灯是开的,其余的都是关的。列车过隧道时,对于正处于隧道中的车厢,应当确保至少有一个车厢中的灯是亮的,所以要额外开启一些车厢的灯。
写一个算法,找到列车经过隧道时,必须额外开灯的最小车厢数。
输入第一行是N和L,第二行表示车厢长度,第三行表示发车时对应车厢灯的开与关。
输入:第一行:7 10
第二行:5 3 4 5 9 9 9
第三行:1 0 0 0 1 0 0
输出:2(可以找到一种方案是开长度分别为4和9的第三和第七车厢的灯)

我的思路是先把一开始开灯的和长度大于等于L的车厢对应的长度变为0(例:0 3 4 5 0 9 9),但是剩下的0之间的就不知道怎么做了。希望大佬们指点下思路(用的Pyhon)。
...全文
206 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
源代码大师 2021-04-26
  • 打赏
  • 举报
回复
C和C++ 完整教程:https://blog.csdn.net/it_xiangqiang/category_10581430.html C和C++ 算法完整教程:https://blog.csdn.net/it_xiangqiang/category_10768339.html
qq_43300131 2021-04-22
  • 打赏
  • 举报
回复
顶一下 有大佬吗
赵4老师 2021-04-21
  • 打赏
  • 举报
回复
模拟+穷举

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧