My 当地火车服务 http://www.sunrail.com/default.aspx?faresandpasses/reloadable.htm最近添加了日常通勤的选项。我正在尝试确定一种算法,用于查找给定日期的一组给定往返行程的最便宜的机票组合。
这里是英语的问题。给定一组天数和每天的乘车次数,以下组合是最便宜的。
- 往返票价一张w每次往返。
- 7天票价x连续 7 个日历日内无限次乘坐。
- 30 天的票价y连续 30 个日历日内无限次乘坐。
- 365 天的票价z连续 365 个日历日内无限次乘坐。
由于我很乐意将其限制为一次只能求解一年,因此我认为天数列表可以轻松存储在如下所示的数组中。
{0,0,1,1,1,0,0,2,1,0,0,0,4,0,1,1,...,0,1,1,5}
其中数量等于每天的往返次数。
我可以使用什么算法来确定涵盖所有行程的最便宜的机票组合?