RT。看了感觉是区间dp。
fi,j 为第 i 至 j 个过去的时长。
把时间排序,i 至 j 等待的时间就是 区间等待时间最长的乘上区间长度减去区间等待时间和。即 aj×l−sumj+sumk),但考虑到车可能还没回来所以给 aj 和 ak+m 取个最大值。
k 为分割点,l 为区间长度,sum 是前缀和,根据然后推出了:
fi,j=min(fi,j,fi,k+max(ak+m,aj)×l−sumj+sumk)
得到每一段的值后,再用另一个数组统计最小值:
dpi,j=min(fi,j,dpi,k+dpk+1,j)
但是这个思路只拿了 15 分。代码等等贴云剪贴板。是思路错了还是代码错了。