作者: Phill King
邮箱: phillking1982@163.com
原创文章,转载请注明出处。
在之前的文章中,我分析了火车票余票的问题,提供了一个高效的算法。在本文中,我们继续讨论无座位号的余票计算以及逐票更新的问题。 之前的分析参见: https://blog.csdn.net/jinij/article/details/87971283
无座位号余票计算
还是以站点数=6, 座位=5为例
如果不考虑座位号,我们只需要考虑每站售出的票数即可。
(1-2)的余票数即为 总票数减去售票数 5 - 2 = 3
(2-3)的余票数即为 总票数减去售票数 5 - 3= 2
以此类推
(1-3)的余票数即为 总票数减去 (1-2)和(2-3)售票数较大者 即 5- max(2,3) = 2
(2-4)的余票数即为 总票数减去 (2-3)和(3-4)售票数较大者 即 5- max(3,4) = 1
以此类推
计算余票的公式
设定 Ti 代表从i站到i+1站的售票数, 如T