回 帖 发 新 帖 刷新版面

主题:求算法:轮渡问题!

轮渡(b.pas)
有一艘车轮渡往来与河的两岸,运送车辆。轮渡上最多可以装载n辆车,过河一次需要t
分钟。只要河的两岸有车在等待,船就要开。即如果船当前所在的一岸有车,那么它将
载车马上过河;如果这一岸没有车,但是对岸有车在等,它会空船开过去;如果两岸此
时都没有车,它就“休息”。如果岸边等待的车超过n量,那么按照到达的顺序,先到
的先上,超过的要等下一班。
给出两岸车到达的情况,问每一辆车到达对岸的时刻。
输入第一行是n、t和m,m表示车的数量。接下来的m行,每行第一个数表示这辆车到达
的时刻,第二个字符串是left或right,表示哪一岸。0<n,t,m<=10000。船初始时在左
岸。车上下船的时间假设为0。输入的时刻一定是严格递增的。
按输入顺序,给出每一辆车到达对岸的时刻。

样例:
输入:b.in
2 10 10
0 left
10 left
20 left
30 left
40 left
50 left
60 left
70 left
80 left
90 left
输出:b.out
10
30
30
50
50
70
70
90
90
110

输入
2 10 3
10 right
25 left
40 left
输出
30
40
60

回复列表 (共2个回复)

沙发

。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。

板凳

可以采用动态规划的思想

我来回复

您尚未登录,请登录后再回复。点此登录或注册